]> granicus.if.org Git - php/commitdiff
Make it compile with libmysql 3.23
authorAndrey Hristov <andrey@php.net>
Mon, 22 Oct 2007 10:35:33 +0000 (10:35 +0000)
committerAndrey Hristov <andrey@php.net>
Mon, 22 Oct 2007 10:35:33 +0000 (10:35 +0000)
ext/mysqli/mysqli.c

index 5e0a5ebc10ca16c27e0aca4f201c6b9ca613879f..24f01bb0151977ef967411d05c2513d4def60561 100644 (file)
@@ -494,6 +494,12 @@ PHP_MINIT_FUNCTION(mysqli)
        
        REGISTER_INI_ENTRIES();
 
+#if MYSQL_VERSION_ID >= 40000
+       if (mysql_server_init(0, NULL, NULL)) {
+               return FAILURE;
+       }
+#endif
+
        memcpy(&mysqli_object_handlers, zend_get_std_object_handlers(), sizeof(zend_object_handlers));
        mysqli_object_handlers.clone_obj = NULL;
        mysqli_object_handlers.read_property = mysqli_read_property;
@@ -651,10 +657,6 @@ PHP_MINIT_FUNCTION(mysqli)
        REGISTER_LONG_CONSTANT("MYSQLI_REPORT_ALL", MYSQLI_REPORT_ALL, CONST_CS | CONST_PERSISTENT);
        REGISTER_LONG_CONSTANT("MYSQLI_REPORT_OFF", 0, CONST_CS | CONST_PERSISTENT);
 
-       if (mysql_server_init(0, NULL, NULL)) {
-               return FAILURE;
-       }
-
        return SUCCESS;
 }
 /* }}} */
@@ -663,6 +665,7 @@ PHP_MINIT_FUNCTION(mysqli)
  */
 PHP_MSHUTDOWN_FUNCTION(mysqli)
 {
+#if MYSQL_VERSION_ID >= 40000
 #ifdef PHP_WIN32
        unsigned long client_ver = mysql_get_client_version();
        /* Can't call mysql_server_end() multiple times prior to 5.0.42 on Windows */
@@ -671,6 +674,7 @@ PHP_MSHUTDOWN_FUNCTION(mysqli)
        }
 #else
        mysql_server_end();
+#endif
 #endif
 
        zend_hash_destroy(&mysqli_driver_properties);
@@ -689,7 +693,7 @@ PHP_MSHUTDOWN_FUNCTION(mysqli)
  */
 PHP_RINIT_FUNCTION(mysqli)
 {
-#ifdef ZTS
+#ifdef ZTS && MYSQL_VERSION_ID >= 40000
        if (mysql_thread_init()) {
                return FAILURE;
        }
@@ -705,7 +709,7 @@ PHP_RINIT_FUNCTION(mysqli)
  */
 PHP_RSHUTDOWN_FUNCTION(mysqli)
 {
-#ifdef ZTS
+#ifdef ZTS && MYSQL_VERSION_ID >= 40000
        mysql_thread_end();
 #endif
        if (MyG(error_msg)) {