@@ -52,7 +52,7 @@ static void getKeyFromName(text *name, char *key);
5252static Package * getPackageByName (text * name ,bool create ,bool strict );
5353static Variable * getVariableInternal (Package * package ,
5454text * name ,Oid typid ,
55- bool strict , bool type_strict );
55+ bool strict );
5656static Variable * createVariableInternal (Package * package ,
5757text * name ,Oid typid ,
5858bool is_transactional );
@@ -197,7 +197,7 @@ variable_get(text *package_name, text *var_name,
197197return 0 ;
198198}
199199
200- variable = getVariableInternal (package ,var_name ,typid ,strict , true );
200+ variable = getVariableInternal (package ,var_name ,typid ,strict );
201201
202202if (variable == NULL )
203203{
@@ -455,7 +455,7 @@ variable_update(PG_FUNCTION_ARGS)
455455strncmp (VARDATA_ANY (var_name ),GetName (LastVariable ),
456456VARSIZE_ANY_EXHDR (var_name ))!= 0 )
457457{
458- variable = getVariableInternal (package ,var_name ,RECORDOID , true, true );
458+ variable = getVariableInternal (package ,var_name ,RECORDOID , true);
459459LastVariable = variable ;
460460}
461461else
@@ -543,7 +543,7 @@ variable_delete(PG_FUNCTION_ARGS)
543543strncmp (VARDATA_ANY (var_name ),GetName (LastVariable ),
544544VARSIZE_ANY_EXHDR (var_name ))!= 0 )
545545{
546- variable = getVariableInternal (package ,var_name ,RECORDOID , true, true );
546+ variable = getVariableInternal (package ,var_name ,RECORDOID , true);
547547LastVariable = variable ;
548548}
549549else
@@ -592,7 +592,7 @@ variable_select(PG_FUNCTION_ARGS)
592592var_name = PG_GETARG_TEXT_PP (1 );
593593
594594package = getPackageByName (package_name , false, true);
595- variable = getVariableInternal (package ,var_name ,RECORDOID , true, true );
595+ variable = getVariableInternal (package ,var_name ,RECORDOID , true);
596596
597597record = & (GetActualValue (variable ).record );
598598
@@ -667,7 +667,7 @@ variable_select_by_value(PG_FUNCTION_ARGS)
667667}
668668
669669package = getPackageByName (package_name , false, true);
670- variable = getVariableInternal (package ,var_name ,RECORDOID , true, true );
670+ variable = getVariableInternal (package ,var_name ,RECORDOID , true);
671671
672672if (!value_is_null )
673673check_record_key (variable ,value_type );
@@ -736,7 +736,7 @@ variable_select_by_values(PG_FUNCTION_ARGS)
736736var_name = PG_GETARG_TEXT_PP (1 );
737737
738738package = getPackageByName (package_name , false, true);
739- variable = getVariableInternal (package ,var_name ,RECORDOID , true, true );
739+ variable = getVariableInternal (package ,var_name ,RECORDOID , true);
740740
741741check_record_key (variable ,ARR_ELEMTYPE (values ));
742742
@@ -870,9 +870,9 @@ remove_variable(PG_FUNCTION_ARGS)
870870var_name = PG_GETARG_TEXT_PP (1 );
871871
872872package = getPackageByName (package_name , false, true);
873- variable = getVariableInternal (package ,var_name ,0 , true, false );
873+ variable = getVariableInternal (package ,var_name ,InvalidOid , true);
874874
875- /* Add package to changes list, so we can remove it if it */
875+ /* Add package to changes list, so we can remove it if itis empty */
876876if (!isObjectChangedInCurrentTrans (& package -> transObject ))
877877{
878878createSavepoint (& package -> transObject ,TRANS_PACKAGE );
@@ -1438,8 +1438,7 @@ getPackageByName(text *name, bool create, bool strict)
14381438 * flag 'is_transactional' of this variable is unknown.
14391439 */
14401440static Variable *
1441- getVariableInternal (Package * package ,text * name ,Oid typid ,bool strict ,
1442- bool type_strict )
1441+ getVariableInternal (Package * package ,text * name ,Oid typid ,bool strict )
14431442{
14441443Variable * variable ;
14451444char key [NAMEDATALEN ];
@@ -1456,7 +1455,7 @@ getVariableInternal(Package *package, text *name, Oid typid, bool strict,
14561455/* Check variable type */
14571456if (found )
14581457{
1459- if (type_strict && variable -> typid != typid )
1458+ if (typid != InvalidOid && variable -> typid != typid )
14601459{
14611460char * var_type = DatumGetCString (DirectFunctionCall1 (regtypeout ,
14621461ObjectIdGetDatum (variable -> typid )));