Hi,

I have a problem calling a C function
from another C function - DirectFunctionCall*
cannot be used since some parameters may be NULL.
This dies:

 FunctionCallInfoData  fcinfo1;

 InitFunctionCallInfoData(fcinfo1, NULL, 7, NULL, NULL);
/*  arg[] and arnull[] are filled with correct values */
 result = myfunc(&fcinfo1);

Also this also:

 FunctionCallInfoData  fcinfo1;
 FmgrInfo              flinfo1;

 MemSet(&flinfo1, 0, sizeof(flinfo1));
 flinfo1.fn_addr = myfunc;
 flinfo1.fn_nargs = 7;
 InitFunctionCallInfoData(fcinfo1, &flinfo1, 7, NULL, NULL);
/*  arg[] and arnull[] are filled with correct values */
 result = FunctionCallInvoke(&fcinfo1);

How to do it correctly? I am on PostgreSQL 8.1.9 currently.

--
----------------------------------
Zoltán Böszörményi
Cybertec Geschwinde & Schönig GmbH
http://www.postgresql.at/


---------------------------(end of broadcast)---------------------------
TIP 5: don't forget to increase your free space map settings

Reply via email to