From: Shigeru Hanada Date: Thu, 30 Jun 2011 05:41:57 +0000 (+0900) Subject: Apply Albe's patch. X-Git-Url: http://git.postgresql.org/gitweb/static/gitweb.js?a=commitdiff_plain;h=577747924c2cd735093db4d7540cc222edf854d4;p=users%2Fhanada%2Fpostgres.git Apply Albe's patch. This patch makes validator functions to be called for every CREATE or ALTER commands even if the option list was empty. --- diff --git a/src/backend/commands/foreigncmds.c b/src/backend/commands/foreigncmds.c index 21d52e06ba..62afbe4af0 100644 --- a/src/backend/commands/foreigncmds.c +++ b/src/backend/commands/foreigncmds.c @@ -40,7 +40,7 @@ /* * Convert a DefElem list to the text array format that is used in * pg_foreign_data_wrapper, pg_foreign_server, and pg_user_mapping. - * Returns the array in the form of a Datum, or PointerGetDatum(NULL) + * Returns the array in the form of a Datum, an empty array * if the list is empty. * * Note: The array is usually stored to database without further @@ -74,7 +74,7 @@ optionListToArray(List *options) if (astate) return makeArrayResult(astate, CurrentMemoryContext); - return PointerGetDatum(NULL); + return construct_empty_array(TEXTOID); } @@ -165,7 +165,7 @@ transformGenericOptions(Oid catalogId, result = optionListToArray(resultOptions); - if (OidIsValid(fdwvalidator) && DatumGetPointer(result) != NULL) + if (OidIsValid(fdwvalidator)) OidFunctionCall2(fdwvalidator, result, ObjectIdGetDatum(catalogId)); return result;