prepare v2.2.3
[m6w6/ext-pq] / src / php_pq_module.c
index 989b7c8f5d11d701e653f7f5348b5b956c45ed61..7385b0b378f234f861da3c0b8cb161432c6b11c6 100644 (file)
@@ -18,7 +18,7 @@
 #include <php.h>
 #include <ext/standard/info.h>
 
-#include <libpq-fe.h>
+#include <libpq-events.h>
 
 #include "php_pq.h"
 #include "php_pq_misc.h"
 #include "php_pqtxn.h"
 #include "php_pqtypes.h"
 
+ZEND_DECLARE_MODULE_GLOBALS(php_pq);
+
+static void php_pq_globals_init_once(zend_php_pq_globals *G)
+{
+       memset(G, 0, sizeof(*G));
+}
+
 #define PHP_MINIT_CALL(i) do { \
-       if (SUCCESS != PHP_MINIT(i)(type, module_number TSRMLS_CC)) { \
+       if (SUCCESS != PHP_MINIT(i)(type, module_number)) { \
                return FAILURE; \
        } \
 } while(0)
 
 static PHP_MINIT_FUNCTION(pq)
 {
+       ZEND_INIT_MODULE_GLOBALS(php_pq, php_pq_globals_init_once, NULL);
+
        PHP_MINIT_CALL(pq_misc);
        PHP_MINIT_CALL(pqexc);
 
@@ -56,19 +65,17 @@ static PHP_MINIT_FUNCTION(pq)
        PHP_MINIT_CALL(pqcopy);
        PHP_MINIT_CALL(pqlob);
 
-       return php_persistent_handle_provide(ZEND_STRL("pq\\Connection"), php_pqconn_get_resource_factory_ops(), NULL, NULL TSRMLS_CC);
+       return SUCCESS;
 }
 
 #define PHP_MSHUT_CALL(i) do { \
-       if (SUCCESS != PHP_MSHUTDOWN(i)(type, module_number TSRMLS_CC)) { \
+       if (SUCCESS != PHP_MSHUTDOWN(i)(type, module_number)) { \
                return FAILURE; \
        } \
 } while(0)
 
 static PHP_MSHUTDOWN_FUNCTION(pq)
 {
-       php_persistent_handle_cleanup(ZEND_STRL("pq\\Connection"), NULL, 0 TSRMLS_CC);
-
        PHP_MSHUT_CALL(pqlob);
        PHP_MSHUT_CALL(pqcopy);
        PHP_MSHUT_CALL(pqcur);
@@ -98,7 +105,7 @@ static PHP_MINFO_FUNCTION(pq)
        php_info_print_table_header(3, "Used Library", "Compiled", "Linked");
 #ifdef HAVE_PQLIBVERSION
        libpq_v = PQlibVersion();
-       slprintf(libpq_version, sizeof(libpq_version), "%d.%d.%d", libpq_v/10000%100, libpq_v/100%100, libpq_v%100);
+       php_pq_version_to_string(libpq_v, libpq_version, sizeof(libpq_version));
 #endif
        php_info_print_table_row(3, "libpq", PHP_PQ_LIBVERSION, libpq_version);
        php_info_print_table_end();