iliaa           Sun Mar  5 17:17:05 2006 UTC

  Modified files:              
    /php-src/ext/pdo_mysql      php_pdo_mysql_int.h mysql_driver.c 
                                pdo_mysql.c 
  Log:
  Fixed bug #36572 (Added PDO::MYSQL_ATTR_DIRECT_QUERY constant that show be
  set when executing internal queries such as "show master status" via MySQL).
  
  Added missing constant for MAX_BUFFER_SIZE.
  
  
http://cvs.php.net/viewcvs.cgi/php-src/ext/pdo_mysql/php_pdo_mysql_int.h?r1=1.19&r2=1.20&diff_format=u
Index: php-src/ext/pdo_mysql/php_pdo_mysql_int.h
diff -u php-src/ext/pdo_mysql/php_pdo_mysql_int.h:1.19 
php-src/ext/pdo_mysql/php_pdo_mysql_int.h:1.20
--- php-src/ext/pdo_mysql/php_pdo_mysql_int.h:1.19      Tue Feb 14 14:26:27 2006
+++ php-src/ext/pdo_mysql/php_pdo_mysql_int.h   Sun Mar  5 17:17:04 2006
@@ -17,7 +17,7 @@
   +----------------------------------------------------------------------+
 */
 
-/* $Id: php_pdo_mysql_int.h,v 1.19 2006/02/14 14:26:27 iliaa Exp $ */
+/* $Id: php_pdo_mysql_int.h,v 1.20 2006/03/05 17:17:04 iliaa Exp $ */
 
 #ifndef PHP_PDO_MYSQL_INT_H
 #define PHP_PDO_MYSQL_INT_H
@@ -37,6 +37,7 @@
 
        unsigned attached:1;
        unsigned buffered:1;
+       unsigned emulate_prepare:1;
        unsigned _reserved:31;
        unsigned long max_buffer_size;
 
@@ -84,5 +85,6 @@
        PDO_MYSQL_ATTR_READ_DEFAULT_FILE,
        PDO_MYSQL_ATTR_READ_DEFAULT_GROUP,
        PDO_MYSQL_ATTR_MAX_BUFFER_SIZE,
+       PDO_MYSQL_ATTR_DIRECT_QUERY,
 };
 #endif
http://cvs.php.net/viewcvs.cgi/php-src/ext/pdo_mysql/mysql_driver.c?r1=1.70&r2=1.71&diff_format=u
Index: php-src/ext/pdo_mysql/mysql_driver.c
diff -u php-src/ext/pdo_mysql/mysql_driver.c:1.70 
php-src/ext/pdo_mysql/mysql_driver.c:1.71
--- php-src/ext/pdo_mysql/mysql_driver.c:1.70   Tue Feb 14 14:26:27 2006
+++ php-src/ext/pdo_mysql/mysql_driver.c        Sun Mar  5 17:17:04 2006
@@ -17,7 +17,7 @@
   +----------------------------------------------------------------------+
 */
 
-/* $Id: mysql_driver.c,v 1.70 2006/02/14 14:26:27 iliaa Exp $ */
+/* $Id: mysql_driver.c,v 1.71 2006/03/05 17:17:04 iliaa Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include "config.h"
@@ -160,6 +160,10 @@
        stmt->driver_data = S;
        stmt->methods = &mysql_stmt_methods;
 
+       if (H->emulate_prepare) {
+               goto end;
+       }
+
        /* TODO: add runtime check to determine if the server we are talking to 
supports
         * prepared statements; if it doesn't, we should set 
stmt->supports_placeholders
         * to PDO_PLACEHOLDER_NONE, and have the rest of the code look at 
S->stmt to
@@ -221,6 +225,7 @@
 
 fallback:
 #endif
+end:
        stmt->supports_placeholders = PDO_PLACEHOLDER_NONE;
        
        return 1;
@@ -303,7 +308,9 @@
        case PDO_MYSQL_ATTR_USE_BUFFERED_QUERY:
                ((pdo_mysql_db_handle *)dbh->driver_data)->buffered = 
Z_BVAL_P(val);
                return 1;
-               
+       case PDO_MYSQL_ATTR_DIRECT_QUERY:
+               ((pdo_mysql_db_handle *)dbh->driver_data)->emulate_prepare = 
Z_BVAL_P(val);
+               return 1;
        default:
                return 0;
        }
http://cvs.php.net/viewcvs.cgi/php-src/ext/pdo_mysql/pdo_mysql.c?r1=1.14&r2=1.15&diff_format=u
Index: php-src/ext/pdo_mysql/pdo_mysql.c
diff -u php-src/ext/pdo_mysql/pdo_mysql.c:1.14 
php-src/ext/pdo_mysql/pdo_mysql.c:1.15
--- php-src/ext/pdo_mysql/pdo_mysql.c:1.14      Sun Jan  1 13:09:53 2006
+++ php-src/ext/pdo_mysql/pdo_mysql.c   Sun Mar  5 17:17:04 2006
@@ -16,7 +16,7 @@
   +----------------------------------------------------------------------+
 */
 
-/* $Id: pdo_mysql.c,v 1.14 2006/01/01 13:09:53 sniper Exp $ */
+/* $Id: pdo_mysql.c,v 1.15 2006/03/05 17:17:04 iliaa Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include "config.h"
@@ -80,6 +80,8 @@
        REGISTER_PDO_CONST_LONG("MYSQL_ATTR_INIT_COMMAND", 
(long)PDO_MYSQL_ATTR_INIT_COMMAND);
        REGISTER_PDO_CONST_LONG("MYSQL_ATTR_READ_DEFAULT_FILE", 
(long)PDO_MYSQL_ATTR_READ_DEFAULT_FILE);
        REGISTER_PDO_CONST_LONG("MYSQL_ATTR_READ_DEFAULT_GROUP", 
(long)PDO_MYSQL_ATTR_READ_DEFAULT_GROUP);
+       REGISTER_PDO_CONST_LONG("MYSQL_ATTR_MAX_BUFFER_SIZE", 
(long)PDO_MYSQL_ATTR_MAX_BUFFER_SIZE);
+       REGISTER_PDO_CONST_LONG("MYSQL_ATTR_DIRECT_QUERY", 
(long)PDO_MYSQL_ATTR_DIRECT_QUERY);
 
        return php_pdo_register_driver(&pdo_mysql_driver);
 }

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to