}
if (column->is_cursor) { /* REFCURSOR -> simply return the statement id */
- value->type = IS_LONG;
+ value->type = IS_RESOURCE;
value->value.lval = column->stmtid;
+ zend_list_addref(column->stmtid);
} else if (column->is_descr) {
if ((column->data_type != SQLT_RDD) && (mode & OCI_RETURN_LOBS)) {
/* OCI_RETURN_LOBS means that we want the content of the LOB back instead of the locator */
if (server->open) {
if (server->pServer && OCI(pError)) {
+#if APACHE
+ void (*handler) (int);
+ handler = signal(SIGCHLD, SIG_DFL);
+#endif
OCI(error) =
OCIServerDetach(server->pServer,
OCI(pError),
OCI_DEFAULT);
+
+#if APACHE
+ signal(SIGCHLD,handler);
+#endif
if (OCI(error)) {
oci_error(OCI(pError), "oci_close_server OCIServerDetach", OCI(error));