[PHP-CVS] cvs: php-src /ext/pdo pdo.c

2008-10-10 Thread Kalle Sommer Nielsen
kalle   Fri Oct 10 23:37:52 2008 UTC

  Modified files:  
/php-src/ext/pdopdo.c 
  Log:
  Add missing zend_parse_paramters_none() in pdo_drivers()
  
http://cvs.php.net/viewvc.cgi/php-src/ext/pdo/pdo.c?r1=1.81r2=1.82diff_format=u
Index: php-src/ext/pdo/pdo.c
diff -u php-src/ext/pdo/pdo.c:1.81 php-src/ext/pdo/pdo.c:1.82
--- php-src/ext/pdo/pdo.c:1.81  Fri Jun 27 19:17:29 2008
+++ php-src/ext/pdo/pdo.c   Fri Oct 10 23:37:51 2008
@@ -18,7 +18,7 @@
   +--+
 */
 
-/* $Id: pdo.c,v 1.81 2008/06/27 19:17:29 felipe Exp $ */
+/* $Id: pdo.c,v 1.82 2008/10/10 23:37:51 kalle Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -102,6 +102,10 @@
 {
HashPosition pos;
pdo_driver_t **pdriver;
+
+   if (zend_parse_parameters_none() == FAILURE) {
+   return;
+   }

array_init(return_value);
 



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



[PHP-CVS] cvs: php-src /ext/pdo pdo.c php_pdo.h

2006-06-07 Thread Rasmus Lerdorf
rasmus  Wed Jun  7 21:13:33 2006 UTC

  Modified files:  
/php-src/ext/pdopdo.c php_pdo.h 
  Log:
  Remove useless RINIT/RSHUTDOWN calls
  
  
http://cvs.php.net/viewcvs.cgi/php-src/ext/pdo/pdo.c?r1=1.73r2=1.74diff_format=u
Index: php-src/ext/pdo/pdo.c
diff -u php-src/ext/pdo/pdo.c:1.73 php-src/ext/pdo/pdo.c:1.74
--- php-src/ext/pdo/pdo.c:1.73  Wed May 10 21:03:34 2006
+++ php-src/ext/pdo/pdo.c   Wed Jun  7 21:13:32 2006
@@ -18,7 +18,7 @@
   +--+
 */
 
-/* $Id: pdo.c,v 1.73 2006/05/10 21:03:34 helly Exp $ */
+/* $Id: pdo.c,v 1.74 2006/06/07 21:13:32 rasmus Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -137,14 +137,17 @@
pdo_functions,
PHP_MINIT(pdo),
PHP_MSHUTDOWN(pdo),
-   PHP_RINIT(pdo),
-   PHP_RSHUTDOWN(pdo),
+   NULL,
+   NULL,
PHP_MINFO(pdo),
1.1dev,
STANDARD_MODULE_PROPERTIES
 };
 /* }}} */
 
+/* TODO: visit persistent handles: for each persistent statement handle,
+ * remove bound parameter associations in RSHUTDOWN */
+
 #ifdef COMPILE_DL_PDO
 ZEND_GET_MODULE(pdo)
 #endif
@@ -348,22 +351,6 @@
 }
 /* }}} */
 
-/* {{{ PHP_RINIT_FUNCTION */
-PHP_RINIT_FUNCTION(pdo)
-{
-   return SUCCESS;
-}
-/* }}} */
-
-/* {{{ PHP_RSHUTDOWN_FUNCTION */
-PHP_RSHUTDOWN_FUNCTION(pdo)
-{
-   /* TODO: visit persistent handles: for each persistent statement handle,
-* remove bound parameter associations */
-   return SUCCESS;
-}
-/* }}} */
-
 /* {{{ PHP_MINFO_FUNCTION */
 PHP_MINFO_FUNCTION(pdo)
 {
http://cvs.php.net/viewcvs.cgi/php-src/ext/pdo/php_pdo.h?r1=1.12r2=1.13diff_format=u
Index: php-src/ext/pdo/php_pdo.h
diff -u php-src/ext/pdo/php_pdo.h:1.12 php-src/ext/pdo/php_pdo.h:1.13
--- php-src/ext/pdo/php_pdo.h:1.12  Sun Jan  1 13:09:52 2006
+++ php-src/ext/pdo/php_pdo.h   Wed Jun  7 21:13:33 2006
@@ -16,7 +16,7 @@
   +--+
 */
 
-/* $Id: php_pdo.h,v 1.12 2006/01/01 13:09:52 sniper Exp $ */
+/* $Id: php_pdo.h,v 1.13 2006/06/07 21:13:33 rasmus Exp $ */
 
 #ifndef PHP_PDO_H
 #define PHP_PDO_H
@@ -48,8 +48,6 @@
 
 PHP_MINIT_FUNCTION(pdo);
 PHP_MSHUTDOWN_FUNCTION(pdo);
-PHP_RINIT_FUNCTION(pdo);
-PHP_RSHUTDOWN_FUNCTION(pdo);
 PHP_MINFO_FUNCTION(pdo);
 
 ZEND_BEGIN_MODULE_GLOBALS(pdo)

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



[PHP-CVS] cvs: php-src /ext/pdo pdo.c /ext/pdo_dblib pdo_dblib.c /ext/pdo_mysql pdo_mysql.c /ext/pdo_oci oci_statement.c pdo_oci.c php_pdo_oci_int.h /ext/pdo_pgsql pdo_pgsql.c /ext/pdo_sqlite pdo

2005-11-25 Thread Jani Taskinen
sniper  Fri Nov 25 10:40:15 2005 EDT

  Modified files:  
/php-src/ext/pdopdo.c 
/php-src/ext/pdo_dblib  pdo_dblib.c 
/php-src/ext/pdo_mysql  pdo_mysql.c 
/php-src/ext/pdo_ocioci_statement.c pdo_oci.c php_pdo_oci_int.h 
/php-src/ext/pdo_pgsql  pdo_pgsql.c 
/php-src/ext/pdo_sqlite pdo_sqlite.c 
/php-src/ext/sqlite sqlite.c 
/php-src/ext/xmlreader  php_xmlreader.c 
  Log:
  - Use right define: ZEND_MODULE_API_NO as these are PHP modules, not Zend 
extensions
  http://cvs.php.net/diff.php/php-src/ext/pdo/pdo.c?r1=1.67r2=1.68ty=u
Index: php-src/ext/pdo/pdo.c
diff -u php-src/ext/pdo/pdo.c:1.67 php-src/ext/pdo/pdo.c:1.68
--- php-src/ext/pdo/pdo.c:1.67  Thu Oct  6 15:32:27 2005
+++ php-src/ext/pdo/pdo.c   Fri Nov 25 10:40:10 2005
@@ -18,7 +18,7 @@
   +--+
 */
 
-/* $Id: pdo.c,v 1.67 2005/10/06 19:32:27 helly Exp $ */
+/* $Id: pdo.c,v 1.68 2005/11/25 15:40:10 sniper Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -115,7 +115,7 @@
 /* }}} */
 
 /* {{{ pdo_functions[] */
-#if ZEND_EXTENSION_API_NO = 220050617
+#if ZEND_MODULE_API_NO = 20050922
 static zend_module_dep pdo_deps[] = {
 #ifdef HAVE_SPL
ZEND_MOD_REQUIRED(spl)
@@ -127,7 +127,7 @@
 
 /* {{{ pdo_module_entry */
 zend_module_entry pdo_module_entry = {
-#if ZEND_EXTENSION_API_NO = 220050617
+#if ZEND_MODULE_API_NO = 20050922
STANDARD_MODULE_HEADER_EX, NULL,
pdo_deps,
 #else
http://cvs.php.net/diff.php/php-src/ext/pdo_dblib/pdo_dblib.c?r1=1.9r2=1.10ty=u
Index: php-src/ext/pdo_dblib/pdo_dblib.c
diff -u php-src/ext/pdo_dblib/pdo_dblib.c:1.9 
php-src/ext/pdo_dblib/pdo_dblib.c:1.10
--- php-src/ext/pdo_dblib/pdo_dblib.c:1.9   Tue Jul 26 23:12:43 2005
+++ php-src/ext/pdo_dblib/pdo_dblib.c   Fri Nov 25 10:40:13 2005
@@ -17,7 +17,7 @@
   +--+
 */
 
-/* $Id: pdo_dblib.c,v 1.9 2005/07/27 03:12:43 wez Exp $ */
+/* $Id: pdo_dblib.c,v 1.10 2005/11/25 15:40:13 sniper Exp $ */
 
 #ifdef HAVE_CONFIG_H
 # include config.h
@@ -38,7 +38,7 @@
{NULL, NULL, NULL}
 };
 
-#if ZEND_EXTENSION_API_NO = 220050617
+#if ZEND_MODULE_API_NO = 20050922
 static zend_module_dep pdo_dblib_deps[] = {
ZEND_MOD_REQUIRED(pdo)
{NULL, NULL, NULL}
@@ -46,7 +46,7 @@
 #endif
 
 zend_module_entry pdo_dblib_module_entry = {
-#if ZEND_EXTENSION_API_NO = 220050617
+#if ZEND_MODULE_API_NO = 20050922
STANDARD_MODULE_HEADER_EX, NULL,
pdo_dblib_deps,
 #else
http://cvs.php.net/diff.php/php-src/ext/pdo_mysql/pdo_mysql.c?r1=1.11r2=1.12ty=u
Index: php-src/ext/pdo_mysql/pdo_mysql.c
diff -u php-src/ext/pdo_mysql/pdo_mysql.c:1.11 
php-src/ext/pdo_mysql/pdo_mysql.c:1.12
--- php-src/ext/pdo_mysql/pdo_mysql.c:1.11  Thu Oct 27 13:33:43 2005
+++ php-src/ext/pdo_mysql/pdo_mysql.c   Fri Nov 25 10:40:13 2005
@@ -16,7 +16,7 @@
   +--+
 */
 
-/* $Id: pdo_mysql.c,v 1.11 2005/10/27 17:33:43 tony2001 Exp $ */
+/* $Id: pdo_mysql.c,v 1.12 2005/11/25 15:40:13 sniper Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -37,7 +37,7 @@
 /* }}} */
 
 /* {{{ pdo_mysql_functions[] */
-#if ZEND_EXTENSION_API_NO = 220050617
+#if ZEND_MODULE_API_NO = 20050922
 static zend_module_dep pdo_mysql_deps[] = {
ZEND_MOD_REQUIRED(pdo)
{NULL, NULL, NULL}
@@ -47,7 +47,7 @@
 
 /* {{{ pdo_mysql_module_entry */
 zend_module_entry pdo_mysql_module_entry = {
-#if ZEND_EXTENSION_API_NO = 220050617
+#if ZEND_MODULE_API_NO = 20050922
STANDARD_MODULE_HEADER_EX, NULL,
pdo_mysql_deps,
 #else
http://cvs.php.net/diff.php/php-src/ext/pdo_oci/oci_statement.c?r1=1.17r2=1.18ty=u
Index: php-src/ext/pdo_oci/oci_statement.c
diff -u php-src/ext/pdo_oci/oci_statement.c:1.17 
php-src/ext/pdo_oci/oci_statement.c:1.18
--- php-src/ext/pdo_oci/oci_statement.c:1.17Fri Oct 28 11:01:47 2005
+++ php-src/ext/pdo_oci/oci_statement.c Fri Nov 25 10:40:13 2005
@@ -1,488 +1,488 @@
-/*
-  +--+
-  | PHP Version 5|
-  +--+
-  | Copyright (c) 1997-2005 The PHP Group|
-  +--+
-  | This source file is subject to version 3.0 of the PHP license,   |
-  | that is bundled with this package in the file LICENSE, and is|
-  | available through the world-wide-web at the following url:   |
-  | http://www.php.net/license/3_0.txt.  |
-  | If you did not receive a copy of the PHP license and are unable to   |
-  | obtain it through the world-wide-web, please send a note to  |
-  | [EMAIL PROTECTED] so we can mail you a copy immediately.   |
-  

[PHP-CVS] cvs: php-src /ext/pdo pdo.c pdo_dbh.c

2005-09-20 Thread Dmitry Stogov
dmitry  Tue Sep 20 02:17:32 2005 EDT

  Modified files:  
/php-src/ext/pdopdo.c pdo_dbh.c 
  Log:
  ZTS fix
  
  
http://cvs.php.net/diff.php/php-src/ext/pdo/pdo.c?r1=1.62r2=1.63ty=u
Index: php-src/ext/pdo/pdo.c
diff -u php-src/ext/pdo/pdo.c:1.62 php-src/ext/pdo/pdo.c:1.63
--- php-src/ext/pdo/pdo.c:1.62  Mon Sep 19 20:33:39 2005
+++ php-src/ext/pdo/pdo.c   Tue Sep 20 02:17:30 2005
@@ -18,7 +18,7 @@
   +--+
 */
 
-/* $Id: pdo.c,v 1.62 2005/09/20 00:33:39 iliaa Exp $ */
+/* $Id: pdo.c,v 1.63 2005/09/20 06:17:30 dmitry Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -306,7 +306,7 @@
 #if can_handle_soft_dependency_on_SPL  defined(HAVE_SPL)  
((PHP_MAJOR_VERSION  5) || (PHP_MAJOR_VERSION == 5  PHP_MINOR_VERSION = 1))
pdo_exception_ce = zend_register_internal_class_ex(ce, 
spl_ce_RuntimeException, NULL TSRMLS_CC);
 #else
-   pdo_exception_ce = zend_register_internal_class_ex(ce, 
zend_exception_get_default(), NULL TSRMLS_CC);
+   pdo_exception_ce = zend_register_internal_class_ex(ce, 
zend_exception_get_default(TSRMLS_C), NULL TSRMLS_CC);
 #endif
zend_declare_property_null(pdo_exception_ce, errorInfo, 
sizeof(errorInfo)-1, ZEND_ACC_PUBLIC TSRMLS_CC);
 
http://cvs.php.net/diff.php/php-src/ext/pdo/pdo_dbh.c?r1=1.91r2=1.92ty=u
Index: php-src/ext/pdo/pdo_dbh.c
diff -u php-src/ext/pdo/pdo_dbh.c:1.91 php-src/ext/pdo/pdo_dbh.c:1.92
--- php-src/ext/pdo/pdo_dbh.c:1.91  Mon Sep 19 20:33:39 2005
+++ php-src/ext/pdo/pdo_dbh.c   Tue Sep 20 02:17:30 2005
@@ -18,7 +18,7 @@
   +--+
 */
 
-/* $Id: pdo_dbh.c,v 1.91 2005/09/20 00:33:39 iliaa Exp $ */
+/* $Id: pdo_dbh.c,v 1.92 2005/09/20 06:17:30 dmitry Exp $ */
 
 /* The PDO Database Handle Class */
 
@@ -84,7 +84,7 @@
}
} else {
zval *ex;
-   zend_class_entry *def_ex = zend_exception_get_default(), 
*pdo_ex = php_pdo_get_exception(TSRMLS_C);
+   zend_class_entry *def_ex = 
zend_exception_get_default(TSRMLS_C), *pdo_ex = php_pdo_get_exception(TSRMLS_C);
 
MAKE_STD_ZVAL(ex);
object_init_ex(ex, pdo_ex);
@@ -165,7 +165,7 @@
}
} else if (EG(exception) == NULL) {
zval *ex;
-   zend_class_entry *def_ex = zend_exception_get_default(), 
*pdo_ex = php_pdo_get_exception(TSRMLS_C);
+   zend_class_entry *def_ex = 
zend_exception_get_default(TSRMLS_C), *pdo_ex = php_pdo_get_exception(TSRMLS_C);
 
MAKE_STD_ZVAL(ex);
object_init_ex(ex, pdo_ex);

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



Re: [PHP-CVS] cvs: php-src /ext/pdo pdo.c pdo_dbh.c

2005-09-20 Thread Marcus Boerger
Hello guys,

  in PHP 5.0 and 5.1 zend_exception_get_default is a void function while
in HEAD it is a TSRMLS_D function. We need to do something here. Probably
providing a helper function. Or we change signature in 5.1. Or we move pdo
core into ext/standard. what IMHO we should do anyway.

regards
marcus

Tuesday, September 20, 2005, 8:17:32 AM, you wrote:

 dmitry  Tue Sep 20 02:17:32 2005 EDT

   Modified files:  
 /php-src/ext/pdopdo.c pdo_dbh.c 
   Log:
   ZTS fix
   
   
 http://cvs.php.net/diff.php/php-src/ext/pdo/pdo.c?r1=1.62r2=1.63ty=u
 Index: php-src/ext/pdo/pdo.c
 diff -u php-src/ext/pdo/pdo.c:1.62 php-src/ext/pdo/pdo.c:1.63
 --- php-src/ext/pdo/pdo.c:1.62  Mon Sep 19 20:33:39 2005
 +++ php-src/ext/pdo/pdo.c   Tue Sep 20 02:17:30 2005
 @@ -18,7 +18,7 @@
+--+
  */
  
 -/* $Id: pdo.c,v 1.62 2005/09/20 00:33:39 iliaa Exp $ */
 +/* $Id: pdo.c,v 1.63 2005/09/20 06:17:30 dmitry Exp $ */
  
  #ifdef HAVE_CONFIG_H
  #include config.h
 @@ -306,7 +306,7 @@
  #if can_handle_soft_dependency_on_SPL  defined(HAVE_SPL) 
 ((PHP_MAJOR_VERSION  5) || (PHP_MAJOR_VERSION == 5  PHP_MINOR_VERSION = 
 1))
 pdo_exception_ce = zend_register_internal_class_ex(ce,
 spl_ce_RuntimeException, NULL TSRMLS_CC);
  #else
 -   pdo_exception_ce = zend_register_internal_class_ex(ce,
 zend_exception_get_default(), NULL TSRMLS_CC);
 +   pdo_exception_ce = zend_register_internal_class_ex(ce,
 zend_exception_get_default(TSRMLS_C), NULL TSRMLS_CC);
  #endif
 zend_declare_property_null(pdo_exception_ce, errorInfo,
 sizeof(errorInfo)-1, ZEND_ACC_PUBLIC TSRMLS_CC);
  
 http://cvs.php.net/diff.php/php-src/ext/pdo/pdo_dbh.c?r1=1.91r2=1.92ty=u
 Index: php-src/ext/pdo/pdo_dbh.c
 diff -u php-src/ext/pdo/pdo_dbh.c:1.91 php-src/ext/pdo/pdo_dbh.c:1.92
 --- php-src/ext/pdo/pdo_dbh.c:1.91  Mon Sep 19 20:33:39 2005
 +++ php-src/ext/pdo/pdo_dbh.c   Tue Sep 20 02:17:30 2005
 @@ -18,7 +18,7 @@
+--+
  */
  
 -/* $Id: pdo_dbh.c,v 1.91 2005/09/20 00:33:39 iliaa Exp $ */
 +/* $Id: pdo_dbh.c,v 1.92 2005/09/20 06:17:30 dmitry Exp $ */
  
  /* The PDO Database Handle Class */
  
 @@ -84,7 +84,7 @@
 }
 } else {
 zval *ex;
 -   zend_class_entry *def_ex = zend_exception_get_default(),
 *pdo_ex = php_pdo_get_exception(TSRMLS_C);
 +   zend_class_entry *def_ex =
 zend_exception_get_default(TSRMLS_C), *pdo_ex = 
 php_pdo_get_exception(TSRMLS_C);
  
 MAKE_STD_ZVAL(ex);
 object_init_ex(ex, pdo_ex);
 @@ -165,7 +165,7 @@
 }
 } else if (EG(exception) == NULL) {
 zval *ex;
 -   zend_class_entry *def_ex = zend_exception_get_default(),
 *pdo_ex = php_pdo_get_exception(TSRMLS_C);
 +   zend_class_entry *def_ex =
 zend_exception_get_default(TSRMLS_C), *pdo_ex = 
 php_pdo_get_exception(TSRMLS_C);
  
 MAKE_STD_ZVAL(ex);
 object_init_ex(ex, pdo_ex);

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



Re: [PHP-CVS] cvs: php-src /ext/pdo pdo.c pdo_dbh.c

2005-09-20 Thread Jani Taskinen


Just change it in 5.1 and not make it sound like a big problem
what it isn't..

And adding this into ext/standard is very bad idea and step backwards.
I wan't to be able to DISABLE this too.

--Jani


On Tue, 20 Sep 2005, Marcus Boerger wrote:



Hello guys,

 in PHP 5.0 and 5.1 zend_exception_get_default is a void function while
in HEAD it is a TSRMLS_D function. We need to do something here. Probably
providing a helper function. Or we change signature in 5.1. Or we move pdo
core into ext/standard. what IMHO we should do anyway.

regards
marcus

Tuesday, September 20, 2005, 8:17:32 AM, you wrote:


dmitry  Tue Sep 20 02:17:32 2005 EDT



  Modified files:
/php-src/ext/pdopdo.c pdo_dbh.c
  Log:
  ZTS fix


http://cvs.php.net/diff.php/php-src/ext/pdo/pdo.c?r1=1.62r2=1.63ty=u
Index: php-src/ext/pdo/pdo.c
diff -u php-src/ext/pdo/pdo.c:1.62 php-src/ext/pdo/pdo.c:1.63
--- php-src/ext/pdo/pdo.c:1.62  Mon Sep 19 20:33:39 2005
+++ php-src/ext/pdo/pdo.c   Tue Sep 20 02:17:30 2005
@@ -18,7 +18,7 @@
   +--+
 */

-/* $Id: pdo.c,v 1.62 2005/09/20 00:33:39 iliaa Exp $ */
+/* $Id: pdo.c,v 1.63 2005/09/20 06:17:30 dmitry Exp $ */

 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -306,7 +306,7 @@
 #if can_handle_soft_dependency_on_SPL  defined(HAVE_SPL) 
((PHP_MAJOR_VERSION  5) || (PHP_MAJOR_VERSION == 5  PHP_MINOR_VERSION = 1))
pdo_exception_ce = zend_register_internal_class_ex(ce,
spl_ce_RuntimeException, NULL TSRMLS_CC);
 #else
-   pdo_exception_ce = zend_register_internal_class_ex(ce,
zend_exception_get_default(), NULL TSRMLS_CC);
+   pdo_exception_ce = zend_register_internal_class_ex(ce,
zend_exception_get_default(TSRMLS_C), NULL TSRMLS_CC);
 #endif
zend_declare_property_null(pdo_exception_ce, errorInfo,
sizeof(errorInfo)-1, ZEND_ACC_PUBLIC TSRMLS_CC);

http://cvs.php.net/diff.php/php-src/ext/pdo/pdo_dbh.c?r1=1.91r2=1.92ty=u
Index: php-src/ext/pdo/pdo_dbh.c
diff -u php-src/ext/pdo/pdo_dbh.c:1.91 php-src/ext/pdo/pdo_dbh.c:1.92
--- php-src/ext/pdo/pdo_dbh.c:1.91  Mon Sep 19 20:33:39 2005
+++ php-src/ext/pdo/pdo_dbh.c   Tue Sep 20 02:17:30 2005
@@ -18,7 +18,7 @@
   +--+
 */

-/* $Id: pdo_dbh.c,v 1.91 2005/09/20 00:33:39 iliaa Exp $ */
+/* $Id: pdo_dbh.c,v 1.92 2005/09/20 06:17:30 dmitry Exp $ */

 /* The PDO Database Handle Class */

@@ -84,7 +84,7 @@
}
} else {
zval *ex;
-   zend_class_entry *def_ex = zend_exception_get_default(),
*pdo_ex = php_pdo_get_exception(TSRMLS_C);
+   zend_class_entry *def_ex =
zend_exception_get_default(TSRMLS_C), *pdo_ex = php_pdo_get_exception(TSRMLS_C);

MAKE_STD_ZVAL(ex);
object_init_ex(ex, pdo_ex);
@@ -165,7 +165,7 @@
}
} else if (EG(exception) == NULL) {
zval *ex;
-   zend_class_entry *def_ex = zend_exception_get_default(),
*pdo_ex = php_pdo_get_exception(TSRMLS_C);
+   zend_class_entry *def_ex =
zend_exception_get_default(TSRMLS_C), *pdo_ex = php_pdo_get_exception(TSRMLS_C);

MAKE_STD_ZVAL(ex);
object_init_ex(ex, pdo_ex);





--
Donate @ http://pecl.php.net/wishlist.php/sniper
Disclaimer: Donating money may make me happier and friendlier for a limited 
period!

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



Re: [PHP-CVS] cvs: php-src /ext/pdo pdo.c pdo_dbh.c

2005-09-20 Thread Marcus Boerger
Hello Jani,

  erm sorry, i meant move pdo into the standard ext dir not into
ext/standard of course.

marcus

Tuesday, September 20, 2005, 11:17:43 AM, you wrote:

  Just change it in 5.1 and not make it sound like a big problem
  what it isn't..

  And adding this into ext/standard is very bad idea and step backwards.
  I wan't to be able to DISABLE this too.

  --Jani


 On Tue, 20 Sep 2005, Marcus Boerger wrote:


 Hello guys,

  in PHP 5.0 and 5.1 zend_exception_get_default is a void function while
 in HEAD it is a TSRMLS_D function. We need to do something here. Probably
 providing a helper function. Or we change signature in 5.1. Or we move pdo
 core into ext/standard. what IMHO we should do anyway.

 regards
 marcus

 Tuesday, September 20, 2005, 8:17:32 AM, you wrote:

 dmitry  Tue Sep 20 02:17:32 2005 EDT

   Modified files:
 /php-src/ext/pdopdo.c pdo_dbh.c
   Log:
   ZTS fix


 http://cvs.php.net/diff.php/php-src/ext/pdo/pdo.c?r1=1.62r2=1.63ty=u
 Index: php-src/ext/pdo/pdo.c
 diff -u php-src/ext/pdo/pdo.c:1.62 php-src/ext/pdo/pdo.c:1.63
 --- php-src/ext/pdo/pdo.c:1.62  Mon Sep 19 20:33:39 2005
 +++ php-src/ext/pdo/pdo.c   Tue Sep 20 02:17:30 2005
 @@ -18,7 +18,7 @@
+--+
  */

 -/* $Id: pdo.c,v 1.62 2005/09/20 00:33:39 iliaa Exp $ */
 +/* $Id: pdo.c,v 1.63 2005/09/20 06:17:30 dmitry Exp $ */

  #ifdef HAVE_CONFIG_H
  #include config.h
 @@ -306,7 +306,7 @@
  #if can_handle_soft_dependency_on_SPL  defined(HAVE_SPL) 
 ((PHP_MAJOR_VERSION  5) || (PHP_MAJOR_VERSION == 5  PHP_MINOR_VERSION = 
 1))
 pdo_exception_ce = zend_register_internal_class_ex(ce,
 spl_ce_RuntimeException, NULL TSRMLS_CC);
  #else
 -   pdo_exception_ce = zend_register_internal_class_ex(ce,
 zend_exception_get_default(), NULL TSRMLS_CC);
 +   pdo_exception_ce = zend_register_internal_class_ex(ce,
 zend_exception_get_default(TSRMLS_C), NULL TSRMLS_CC);
  #endif
 zend_declare_property_null(pdo_exception_ce, errorInfo,
 sizeof(errorInfo)-1, ZEND_ACC_PUBLIC TSRMLS_CC);

 http://cvs.php.net/diff.php/php-src/ext/pdo/pdo_dbh.c?r1=1.91r2=1.92ty=u
 Index: php-src/ext/pdo/pdo_dbh.c
 diff -u php-src/ext/pdo/pdo_dbh.c:1.91 php-src/ext/pdo/pdo_dbh.c:1.92
 --- php-src/ext/pdo/pdo_dbh.c:1.91  Mon Sep 19 20:33:39 2005
 +++ php-src/ext/pdo/pdo_dbh.c   Tue Sep 20 02:17:30 2005
 @@ -18,7 +18,7 @@
+--+
  */

 -/* $Id: pdo_dbh.c,v 1.91 2005/09/20 00:33:39 iliaa Exp $ */
 +/* $Id: pdo_dbh.c,v 1.92 2005/09/20 06:17:30 dmitry Exp $ */

  /* The PDO Database Handle Class */

 @@ -84,7 +84,7 @@
 }
 } else {
 zval *ex;
 -   zend_class_entry *def_ex = zend_exception_get_default(),
 *pdo_ex = php_pdo_get_exception(TSRMLS_C);
 +   zend_class_entry *def_ex =
 zend_exception_get_default(TSRMLS_C), *pdo_ex = 
 php_pdo_get_exception(TSRMLS_C);

 MAKE_STD_ZVAL(ex);
 object_init_ex(ex, pdo_ex);
 @@ -165,7 +165,7 @@
 }
 } else if (EG(exception) == NULL) {
 zval *ex;
 -   zend_class_entry *def_ex = zend_exception_get_default(),
 *pdo_ex = php_pdo_get_exception(TSRMLS_C);
 +   zend_class_entry *def_ex =
 zend_exception_get_default(TSRMLS_C), *pdo_ex = 
 php_pdo_get_exception(TSRMLS_C);

 MAKE_STD_ZVAL(ex);
 object_init_ex(ex, pdo_ex);






Best regards,
 Marcus

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



Re: [PHP-CVS] cvs: php-src /ext/pdo pdo.c pdo_dbh.c

2005-09-20 Thread Wez Furlong
Just add a helper macro to php_pdo_phpvers_compat.h for this.

--Wez.

On 9/20/05, Marcus Boerger [EMAIL PROTECTED] wrote:
 Hello Jani,
 
   erm sorry, i meant move pdo into the standard ext dir not into
 ext/standard of course.
 
 marcus
 
 Tuesday, September 20, 2005, 11:17:43 AM, you wrote:
 
   Just change it in 5.1 and not make it sound like a big problem
   what it isn't..
 
   And adding this into ext/standard is very bad idea and step backwards.
   I wan't to be able to DISABLE this too.
 
   --Jani
 
 
  On Tue, 20 Sep 2005, Marcus Boerger wrote:
 
 
  Hello guys,
 
   in PHP 5.0 and 5.1 zend_exception_get_default is a void function while
  in HEAD it is a TSRMLS_D function. We need to do something here. Probably
  providing a helper function. Or we change signature in 5.1. Or we move pdo
  core into ext/standard. what IMHO we should do anyway.
 
  regards
  marcus
 
  Tuesday, September 20, 2005, 8:17:32 AM, you wrote:
 
  dmitry  Tue Sep 20 02:17:32 2005 EDT
 
Modified files:
  /php-src/ext/pdopdo.c pdo_dbh.c
Log:
ZTS fix
 
 
  http://cvs.php.net/diff.php/php-src/ext/pdo/pdo.c?r1=1.62r2=1.63ty=u
  Index: php-src/ext/pdo/pdo.c
  diff -u php-src/ext/pdo/pdo.c:1.62 php-src/ext/pdo/pdo.c:1.63
  --- php-src/ext/pdo/pdo.c:1.62  Mon Sep 19 20:33:39 2005
  +++ php-src/ext/pdo/pdo.c   Tue Sep 20 02:17:30 2005
  @@ -18,7 +18,7 @@
 
  +--+
   */
 
  -/* $Id: pdo.c,v 1.62 2005/09/20 00:33:39 iliaa Exp $ */
  +/* $Id: pdo.c,v 1.63 2005/09/20 06:17:30 dmitry Exp $ */
 
   #ifdef HAVE_CONFIG_H
   #include config.h
  @@ -306,7 +306,7 @@
   #if can_handle_soft_dependency_on_SPL  defined(HAVE_SPL) 
  ((PHP_MAJOR_VERSION  5) || (PHP_MAJOR_VERSION == 5  PHP_MINOR_VERSION 
  = 1))
  pdo_exception_ce = zend_register_internal_class_ex(ce,
  spl_ce_RuntimeException, NULL TSRMLS_CC);
   #else
  -   pdo_exception_ce = zend_register_internal_class_ex(ce,
  zend_exception_get_default(), NULL TSRMLS_CC);
  +   pdo_exception_ce = zend_register_internal_class_ex(ce,
  zend_exception_get_default(TSRMLS_C), NULL TSRMLS_CC);
   #endif
  zend_declare_property_null(pdo_exception_ce, errorInfo,
  sizeof(errorInfo)-1, ZEND_ACC_PUBLIC TSRMLS_CC);
 
  http://cvs.php.net/diff.php/php-src/ext/pdo/pdo_dbh.c?r1=1.91r2=1.92ty=u
  Index: php-src/ext/pdo/pdo_dbh.c
  diff -u php-src/ext/pdo/pdo_dbh.c:1.91 php-src/ext/pdo/pdo_dbh.c:1.92
  --- php-src/ext/pdo/pdo_dbh.c:1.91  Mon Sep 19 20:33:39 2005
  +++ php-src/ext/pdo/pdo_dbh.c   Tue Sep 20 02:17:30 2005
  @@ -18,7 +18,7 @@
 
  +--+
   */
 
  -/* $Id: pdo_dbh.c,v 1.91 2005/09/20 00:33:39 iliaa Exp $ */
  +/* $Id: pdo_dbh.c,v 1.92 2005/09/20 06:17:30 dmitry Exp $ */
 
   /* The PDO Database Handle Class */
 
  @@ -84,7 +84,7 @@
  }
  } else {
  zval *ex;
  -   zend_class_entry *def_ex = zend_exception_get_default(),
  *pdo_ex = php_pdo_get_exception(TSRMLS_C);
  +   zend_class_entry *def_ex =
  zend_exception_get_default(TSRMLS_C), *pdo_ex = 
  php_pdo_get_exception(TSRMLS_C);
 
  MAKE_STD_ZVAL(ex);
  object_init_ex(ex, pdo_ex);
  @@ -165,7 +165,7 @@
  }
  } else if (EG(exception) == NULL) {
  zval *ex;
  -   zend_class_entry *def_ex = zend_exception_get_default(),
  *pdo_ex = php_pdo_get_exception(TSRMLS_C);
  +   zend_class_entry *def_ex =
  zend_exception_get_default(TSRMLS_C), *pdo_ex = 
  php_pdo_get_exception(TSRMLS_C);
 
  MAKE_STD_ZVAL(ex);
  object_init_ex(ex, pdo_ex);
 
 
 
 
 
 
 Best regards,
  Marcus
 
 --
 PHP CVS Mailing List (http://www.php.net/)
 To unsubscribe, visit: http://www.php.net/unsub.php
 


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



[PHP-CVS] cvs: php-src /ext/pdo pdo.c pdo_dbh.c php_pdo.h /ext/pdo/tests pdo_001.phpt pdo_002.phpt pdo_003.phpt pdo_004.phpt pdo_005.phpt pdo_006.phpt pdo_007.phpt pdo_008.phpt pdo_009.phpt pdo_010.p

2005-09-19 Thread Ilia Alshanetsky
iliaa   Mon Sep 19 20:33:42 2005 EDT

  Modified files:  
/php-src/ext/pdopdo.c pdo_dbh.c php_pdo.h 
/php-src/ext/pdo/tests  pdo_001.phpt pdo_002.phpt pdo_003.phpt 
pdo_004.phpt pdo_005.phpt pdo_006.phpt 
pdo_007.phpt pdo_008.phpt pdo_009.phpt 
pdo_010.phpt pdo_011.phpt pdo_012.phpt 
pdo_013.phpt pdo_014.phpt pdo_015.phpt 
pdo_016.phpt pdo_016a.phpt pdo_017.phpt 
pdo_018.phpt pdo_019.phpt pdo_023.phpt 
pdo_025.phpt pdo_026.phpt pdo_027.phpt 
pdo_test.inc 
/php-src/ext/pdo_mysql  pdo_mysql.c 
/php-src/ext/pdo_pgsql  pdo_pgsql.c pgsql_statement.c 
  Log:
  Make PDO use class constants
  
  http://cvs.php.net/diff.php/php-src/ext/pdo/pdo.c?r1=1.61r2=1.62ty=u
Index: php-src/ext/pdo/pdo.c
diff -u php-src/ext/pdo/pdo.c:1.61 php-src/ext/pdo/pdo.c:1.62
--- php-src/ext/pdo/pdo.c:1.61  Mon Sep 19 14:05:00 2005
+++ php-src/ext/pdo/pdo.c   Mon Sep 19 20:33:39 2005
@@ -18,7 +18,7 @@
   +--+
 */
 
-/* $Id: pdo.c,v 1.61 2005/09/19 18:05:00 helly Exp $ */
+/* $Id: pdo.c,v 1.62 2005/09/20 00:33:39 iliaa Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -302,89 +302,6 @@
le_ppdo = zend_register_list_destructors_ex(NULL, php_pdo_pdbh_dtor,
PDO persistent database, module_number);
 
-   REGISTER_LONG_CONSTANT(PDO_PARAM_BOOL, (long)PDO_PARAM_BOOL,  
CONST_CS|CONST_PERSISTENT);
-   REGISTER_LONG_CONSTANT(PDO_PARAM_NULL, (long)PDO_PARAM_NULL,  
CONST_CS|CONST_PERSISTENT);
-   REGISTER_LONG_CONSTANT(PDO_PARAM_INT,  (long)PDO_PARAM_INT,   
CONST_CS|CONST_PERSISTENT);
-   REGISTER_LONG_CONSTANT(PDO_PARAM_STR,  (long)PDO_PARAM_STR,   
CONST_CS|CONST_PERSISTENT);
-   REGISTER_LONG_CONSTANT(PDO_PARAM_LOB,  (long)PDO_PARAM_LOB,   
CONST_CS|CONST_PERSISTENT);
-   REGISTER_LONG_CONSTANT(PDO_PARAM_STMT, (long)PDO_PARAM_STMT,  
CONST_CS|CONST_PERSISTENT);
-   REGISTER_LONG_CONSTANT(PDO_PARAM_INPUT_OUTPUT, 
(long)PDO_PARAM_INPUT_OUTPUT,  CONST_CS|CONST_PERSISTENT);
-
-   REGISTER_LONG_CONSTANT(PDO_FETCH_LAZY, (long)PDO_FETCH_LAZY,  
CONST_CS|CONST_PERSISTENT);
-   REGISTER_LONG_CONSTANT(PDO_FETCH_ASSOC,(long)PDO_FETCH_ASSOC, 
CONST_CS|CONST_PERSISTENT);
-   REGISTER_LONG_CONSTANT(PDO_FETCH_NUM,  (long)PDO_FETCH_NUM,   
CONST_CS|CONST_PERSISTENT);
-   REGISTER_LONG_CONSTANT(PDO_FETCH_BOTH, (long)PDO_FETCH_BOTH,  
CONST_CS|CONST_PERSISTENT);
-   REGISTER_LONG_CONSTANT(PDO_FETCH_OBJ,  (long)PDO_FETCH_OBJ,   
CONST_CS|CONST_PERSISTENT);
-   REGISTER_LONG_CONSTANT(PDO_FETCH_BOUND,(long)PDO_FETCH_BOUND, 
CONST_CS|CONST_PERSISTENT);
-   REGISTER_LONG_CONSTANT(PDO_FETCH_COLUMN,(long)PDO_FETCH_COLUMN,   
CONST_CS|CONST_PERSISTENT);
-   REGISTER_LONG_CONSTANT(PDO_FETCH_CLASS,(long)PDO_FETCH_CLASS, 
CONST_CS|CONST_PERSISTENT);
-   REGISTER_LONG_CONSTANT(PDO_FETCH_INTO, (long)PDO_FETCH_INTO,  
CONST_CS|CONST_PERSISTENT);
-   REGISTER_LONG_CONSTANT(PDO_FETCH_FUNC, (long)PDO_FETCH_FUNC,  
CONST_CS|CONST_PERSISTENT);
-   REGISTER_LONG_CONSTANT(PDO_FETCH_GROUP,(long)PDO_FETCH_GROUP, 
CONST_CS|CONST_PERSISTENT);
-   REGISTER_LONG_CONSTANT(PDO_FETCH_UNIQUE,(long)PDO_FETCH_UNIQUE, 
CONST_CS|CONST_PERSISTENT);
-   REGISTER_LONG_CONSTANT(PDO_FETCH_CLASSTYPE,(long)PDO_FETCH_CLASSTYPE, 
CONST_CS|CONST_PERSISTENT);
-#if PHP_MAJOR_VERSION  5 || PHP_MINOR_VERSION = 1
-   REGISTER_LONG_CONSTANT(PDO_FETCH_SERIALIZE,(long)PDO_FETCH_SERIALIZE, 
CONST_CS|CONST_PERSISTENT);
-#endif
-   REGISTER_LONG_CONSTANT(PDO_FETCH_NAMED,(long)PDO_FETCH_NAMED, 
CONST_CS|CONST_PERSISTENT);
-
-   REGISTER_LONG_CONSTANT(PDO_ATTR_AUTOCOMMIT,   
(long)PDO_ATTR_AUTOCOMMIT,  CONST_CS|CONST_PERSISTENT);
-   REGISTER_LONG_CONSTANT(PDO_ATTR_PREFETCH, 
(long)PDO_ATTR_PREFETCH,CONST_CS|CONST_PERSISTENT);
-   REGISTER_LONG_CONSTANT(PDO_ATTR_TIMEOUT,  
(long)PDO_ATTR_TIMEOUT, CONST_CS|CONST_PERSISTENT);
-   REGISTER_LONG_CONSTANT(PDO_ATTR_ERRMODE,  
(long)PDO_ATTR_ERRMODE, CONST_CS|CONST_PERSISTENT);
-   REGISTER_LONG_CONSTANT(PDO_ATTR_SERVER_VERSION,   
(long)PDO_ATTR_SERVER_VERSION,  CONST_CS|CONST_PERSISTENT);
-   REGISTER_LONG_CONSTANT(PDO_ATTR_CLIENT_VERSION,   
(long)PDO_ATTR_CLIENT_VERSION,  CONST_CS|CONST_PERSISTENT);
-   REGISTER_LONG_CONSTANT(PDO_ATTR_SERVER_INFO,  
(long)PDO_ATTR_SERVER_INFO, CONST_CS|CONST_PERSISTENT);
-   REGISTER_LONG_CONSTANT(PDO_ATTR_CONNECTION_STATUS,
(long)PDO_ATTR_CONNECTION_STATUS,   CONST_CS|CONST_PERSISTENT);
-   REGISTER_LONG_CONSTANT(PDO_ATTR_CASE, 
(long)PDO_ATTR_CASE,CONST_CS|CONST_PERSISTENT);
- 

[PHP-CVS] cvs: php-src /ext/pdo pdo.c php_pdo_driver.h /ext/pdo_mysql mysql_driver.c mysql_statement.c

2005-07-19 Thread Ilia Alshanetsky
iliaa   Tue Jul 19 23:38:34 2005 EDT

  Modified files:  
/php-src/ext/pdo_mysql  mysql_driver.c mysql_statement.c 
/php-src/ext/pdopdo.c php_pdo_driver.h 
  Log:
  Proper handling for databases that need to pre-calculate length of large
  columns, which is not normally done for performance reasons.
  
  
http://cvs.php.net/diff.php/php-src/ext/pdo_mysql/mysql_driver.c?r1=1.58r2=1.59ty=u
Index: php-src/ext/pdo_mysql/mysql_driver.c
diff -u php-src/ext/pdo_mysql/mysql_driver.c:1.58 
php-src/ext/pdo_mysql/mysql_driver.c:1.59
--- php-src/ext/pdo_mysql/mysql_driver.c:1.58   Wed Jul 13 22:09:08 2005
+++ php-src/ext/pdo_mysql/mysql_driver.cTue Jul 19 23:38:32 2005
@@ -17,7 +17,7 @@
   +--+
 */
 
-/* $Id: mysql_driver.c,v 1.58 2005/07/14 02:09:08 wez Exp $ */
+/* $Id: mysql_driver.c,v 1.59 2005/07/20 03:38:32 iliaa Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -208,6 +208,8 @@
 
dbh-alloc_own_columns = 1;
 
+   S-max_length = pdo_attr_lval(driver_options, PDO_ATTR_MAX_COLUMN_LEN, 
0 TSRMLS_CC);
+
return 1;
 
 #else
http://cvs.php.net/diff.php/php-src/ext/pdo_mysql/mysql_statement.c?r1=1.46r2=1.47ty=u
Index: php-src/ext/pdo_mysql/mysql_statement.c
diff -u php-src/ext/pdo_mysql/mysql_statement.c:1.46 
php-src/ext/pdo_mysql/mysql_statement.c:1.47
--- php-src/ext/pdo_mysql/mysql_statement.c:1.46Tue Jul 19 22:36:34 2005
+++ php-src/ext/pdo_mysql/mysql_statement.c Tue Jul 19 23:38:32 2005
@@ -17,7 +17,7 @@
   +--+
 */
 
-/* $Id: mysql_statement.c,v 1.46 2005/07/20 02:36:34 iliaa Exp $ */
+/* $Id: mysql_statement.c,v 1.47 2005/07/20 03:38:32 iliaa Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -93,8 +93,7 @@
 
/* if buffered, pre-fetch all the data */
if (H-buffered) {
-   /* if we have bound the buffers don't set the attribute 
again */
-   if (!S-result  stmt-column_count  0) {
+   if (S-max_length == 1  !S-result) {
my_bool on = 1;
mysql_stmt_attr_set(S-stmt, 
STMT_ATTR_UPDATE_MAX_LENGTH, on);
}
http://cvs.php.net/diff.php/php-src/ext/pdo/pdo.c?r1=1.55r2=1.56ty=u
Index: php-src/ext/pdo/pdo.c
diff -u php-src/ext/pdo/pdo.c:1.55 php-src/ext/pdo/pdo.c:1.56
--- php-src/ext/pdo/pdo.c:1.55  Mon Jul 11 22:40:59 2005
+++ php-src/ext/pdo/pdo.c   Tue Jul 19 23:38:33 2005
@@ -18,7 +18,7 @@
   +--+
 */
 
-/* $Id: pdo.c,v 1.55 2005/07/12 02:40:59 wez Exp $ */
+/* $Id: pdo.c,v 1.56 2005/07/20 03:38:33 iliaa Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -338,6 +338,7 @@
REGISTER_LONG_CONSTANT(PDO_ATTR_FETCH_CATALOG_NAMES,  
(long)PDO_ATTR_FETCH_CATALOG_NAMES, 
CONST_CS|CONST_PERSISTENT);
REGISTER_LONG_CONSTANT(PDO_ATTR_DRIVER_NAME,  
(long)PDO_ATTR_DRIVER_NAME, CONST_CS|CONST_PERSISTENT);

REGISTER_LONG_CONSTANT(PDO_ATTR_STRINGIFY_FETCHES,(long)PDO_ATTR_STRINGIFY_FETCHES,
   CONST_CS|CONST_PERSISTENT);
+   
REGISTER_LONG_CONSTANT(PDO_ATTR_MAX_COLUMN_LEN,(long)PDO_ATTR_MAX_COLUMN_LEN, 
CONST_CS|CONST_PERSISTENT);

REGISTER_LONG_CONSTANT(PDO_ERRMODE_SILENT,
(long)PDO_ERRMODE_SILENT,   CONST_CS|CONST_PERSISTENT);
REGISTER_LONG_CONSTANT(PDO_ERRMODE_WARNING,   
(long)PDO_ERRMODE_WARNING,  CONST_CS|CONST_PERSISTENT);
http://cvs.php.net/diff.php/php-src/ext/pdo/php_pdo_driver.h?r1=1.65r2=1.66ty=u
Index: php-src/ext/pdo/php_pdo_driver.h
diff -u php-src/ext/pdo/php_pdo_driver.h:1.65 
php-src/ext/pdo/php_pdo_driver.h:1.66
--- php-src/ext/pdo/php_pdo_driver.h:1.65   Mon Jul 11 22:40:59 2005
+++ php-src/ext/pdo/php_pdo_driver.hTue Jul 19 23:38:33 2005
@@ -16,7 +16,7 @@
   +--+
 */
 
-/* $Id: php_pdo_driver.h,v 1.65 2005/07/12 02:40:59 wez Exp $ */
+/* $Id: php_pdo_driver.h,v 1.66 2005/07/20 03:38:33 iliaa Exp $ */
 
 #ifndef PHP_PDO_DRIVER_H
 #define PHP_PDO_DRIVER_H
@@ -128,6 +128,7 @@
PDO_ATTR_FETCH_CATALOG_NAMES, /* include the catalog/db name names in 
the column names, where available */
PDO_ATTR_DRIVER_NAME, /* name of the driver (as used in the 
constructor) */
PDO_ATTR_STRINGIFY_FETCHES, /* converts integer/float types to 
strings during fetch */
+   PDO_ATTR_MAX_COLUMN_LEN,/* make database calculate maximum 
length of data found in a column */
 
/* this defines the start of the range for driver specific options.
 * Drivers should define their own attribute constants beginning with 
this

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



[PHP-CVS] cvs: php-src /ext/pdo pdo.c pdo_dbh.c pdo_stmt.c php_pdo_driver.h

2005-07-11 Thread Wez Furlong
wez Mon Jul 11 22:41:00 2005 EDT

  Modified files:  
/php-src/ext/pdopdo.c pdo_dbh.c pdo_stmt.c php_pdo_driver.h 
  Log:
  expand oracle null handling compatability by offering the ability to convert
  NULLs into empty strings as well as the other way around.  It still doesn't
  help a great deal in the long run, but at least the option is there.
  
  Make sure hash tables are nulled out to avoid double freeing them.
  
  
  
http://cvs.php.net/diff.php/php-src/ext/pdo/pdo.c?r1=1.54r2=1.55ty=u
Index: php-src/ext/pdo/pdo.c
diff -u php-src/ext/pdo/pdo.c:1.54 php-src/ext/pdo/pdo.c:1.55
--- php-src/ext/pdo/pdo.c:1.54  Fri Jul  8 00:12:57 2005
+++ php-src/ext/pdo/pdo.c   Mon Jul 11 22:40:59 2005
@@ -18,7 +18,7 @@
   +--+
 */
 
-/* $Id: pdo.c,v 1.54 2005/07/08 04:12:57 wez Exp $ */
+/* $Id: pdo.c,v 1.55 2005/07/12 02:40:59 wez Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -346,7 +346,11 @@
REGISTER_LONG_CONSTANT(PDO_CASE_NATURAL,  (long)PDO_CASE_NATURAL, 
CONST_CS|CONST_PERSISTENT);
REGISTER_LONG_CONSTANT(PDO_CASE_LOWER,(long)PDO_CASE_LOWER,   
CONST_CS|CONST_PERSISTENT);
REGISTER_LONG_CONSTANT(PDO_CASE_UPPER,(long)PDO_CASE_UPPER,   
CONST_CS|CONST_PERSISTENT);
-   
+
+   REGISTER_LONG_CONSTANT(PDO_NULL_NATURAL,  (long)PDO_NULL_NATURAL, 
CONST_CS|CONST_PERSISTENT);
+   REGISTER_LONG_CONSTANT(PDO_NULL_EMPTY_STRING, 
(long)PDO_NULL_EMPTY_STRING,CONST_CS|CONST_PERSISTENT);
+   REGISTER_LONG_CONSTANT(PDO_NULL_TO_STRING,
(long)PDO_NULL_TO_STRING,   CONST_CS|CONST_PERSISTENT);
+   
REGISTER_STRING_CONSTANT(PDO_ERR_NONE,PDO_ERR_NONE,   
CONST_CS|CONST_PERSISTENT);
 
REGISTER_LONG_CONSTANT(PDO_FETCH_ORI_NEXT, (long)PDO_FETCH_ORI_NEXT, 
CONST_CS|CONST_PERSISTENT);
http://cvs.php.net/diff.php/php-src/ext/pdo/pdo_dbh.c?r1=1.81r2=1.82ty=u
Index: php-src/ext/pdo/pdo_dbh.c
diff -u php-src/ext/pdo/pdo_dbh.c:1.81 php-src/ext/pdo/pdo_dbh.c:1.82
--- php-src/ext/pdo/pdo_dbh.c:1.81  Fri Jul  8 22:53:05 2005
+++ php-src/ext/pdo/pdo_dbh.c   Mon Jul 11 22:40:59 2005
@@ -18,7 +18,7 @@
   +--+
 */
 
-/* $Id: pdo_dbh.c,v 1.81 2005/07/09 02:53:05 iliaa Exp $ */
+/* $Id: pdo_dbh.c,v 1.82 2005/07/12 02:40:59 wez Exp $ */
 
 /* The PDO Database Handle Class */
 
@@ -691,7 +691,7 @@
 
case PDO_ATTR_ORACLE_NULLS:
convert_to_long(value);
-   dbh-oracle_nulls = Z_LVAL_P(value) ? 1 : 0;
+   dbh-oracle_nulls = Z_LVAL_P(value);
RETURN_TRUE;
 
case PDO_ATTR_STRINGIFY_FETCHES:
@@ -746,7 +746,7 @@
RETURN_LONG(dbh-desired_case);
 
case PDO_ATTR_ORACLE_NULLS:
-   RETURN_BOOL(dbh-oracle_nulls);
+   RETURN_LONG(dbh-oracle_nulls);
 
case PDO_ATTR_ERRMODE:
RETURN_LONG(dbh-error_mode);
http://cvs.php.net/diff.php/php-src/ext/pdo/pdo_stmt.c?r1=1.109r2=1.110ty=u
Index: php-src/ext/pdo/pdo_stmt.c
diff -u php-src/ext/pdo/pdo_stmt.c:1.109 php-src/ext/pdo/pdo_stmt.c:1.110
--- php-src/ext/pdo/pdo_stmt.c:1.109Mon Jul 11 10:14:56 2005
+++ php-src/ext/pdo/pdo_stmt.c  Mon Jul 11 22:40:59 2005
@@ -18,7 +18,7 @@
   +--+
 */
 
-/* $Id: pdo_stmt.c,v 1.109 2005/07/11 14:14:56 andrey Exp $ */
+/* $Id: pdo_stmt.c,v 1.110 2005/07/12 02:40:59 wez Exp $ */
 
 /* The PDO Statement Handle Class */
 
@@ -476,7 +476,7 @@
break;

case PDO_PARAM_STR:
-   if (value  !(value_len == 0  
stmt-dbh-oracle_nulls)) {
+   if (value  !(value_len == 0  
stmt-dbh-oracle_nulls == PDO_NULL_EMPTY_STRING)) {
ZVAL_STRINGL(dest, value, value_len, 
!caller_frees);
if (caller_frees) {
caller_frees = 0;
@@ -499,6 +499,10 @@
break;
}
}
+
+   if (Z_TYPE_P(dest) == IS_NULL  stmt-dbh-oracle_nulls == 
PDO_NULL_TO_STRING) {
+   ZVAL_EMPTY_STRING(dest);
+   }
 }
 /* }}} */
 
@@ -1898,14 +1902,17 @@
if (stmt-bound_params) {
zend_hash_destroy(stmt-bound_params);
FREE_HASHTABLE(stmt-bound_params);
+   stmt-bound_params = NULL;
}
if (stmt-bound_param_map) {
zend_hash_destroy(stmt-bound_param_map);
FREE_HASHTABLE(stmt-bound_param_map);
+   stmt-bound_param_map = NULL;
}
if (stmt-bound_columns) {
zend_hash_destroy(stmt-bound_columns);
  

[PHP-CVS] cvs: php-src /ext/pdo pdo.c pdo_dbh.c

2005-07-07 Thread Wez Furlong
wez Thu Jul  7 13:08:03 2005 EDT

  Modified files:  
/php-src/ext/pdopdo.c pdo_dbh.c 
  Log:
  populate the new dbh-driver field.
  Implement PDO_ATTR_DRIVER_NAME.
  
  
http://cvs.php.net/diff.php/php-src/ext/pdo/pdo.c?r1=1.52r2=1.53ty=u
Index: php-src/ext/pdo/pdo.c
diff -u php-src/ext/pdo/pdo.c:1.52 php-src/ext/pdo/pdo.c:1.53
--- php-src/ext/pdo/pdo.c:1.52  Sat Jul  2 23:49:44 2005
+++ php-src/ext/pdo/pdo.c   Thu Jul  7 13:08:01 2005
@@ -18,7 +18,7 @@
   +--+
 */
 
-/* $Id: pdo.c,v 1.52 2005/07/03 03:49:44 wez Exp $ */
+/* $Id: pdo.c,v 1.53 2005/07/07 17:08:01 wez Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -336,6 +336,7 @@
REGISTER_LONG_CONSTANT(PDO_ATTR_STATEMENT_CLASS,  
(long)PDO_ATTR_STATEMENT_CLASS, CONST_CS|CONST_PERSISTENT);
REGISTER_LONG_CONSTANT(PDO_ATTR_FETCH_TABLE_NAMES,
(long)PDO_ATTR_FETCH_TABLE_NAMES,   
CONST_CS|CONST_PERSISTENT);
REGISTER_LONG_CONSTANT(PDO_ATTR_FETCH_CATALOG_NAMES,  
(long)PDO_ATTR_FETCH_CATALOG_NAMES, 
CONST_CS|CONST_PERSISTENT);
+   REGISTER_LONG_CONSTANT(PDO_ATTR_DRIVER_NAME,  
(long)PDO_ATTR_DRIVER_NAME, CONST_CS|CONST_PERSISTENT);

REGISTER_LONG_CONSTANT(PDO_ERRMODE_SILENT,
(long)PDO_ERRMODE_SILENT,   CONST_CS|CONST_PERSISTENT);
REGISTER_LONG_CONSTANT(PDO_ERRMODE_WARNING,   
(long)PDO_ERRMODE_WARNING,  CONST_CS|CONST_PERSISTENT);
http://cvs.php.net/diff.php/php-src/ext/pdo/pdo_dbh.c?r1=1.77r2=1.78ty=u
Index: php-src/ext/pdo/pdo_dbh.c
diff -u php-src/ext/pdo/pdo_dbh.c:1.77 php-src/ext/pdo/pdo_dbh.c:1.78
--- php-src/ext/pdo/pdo_dbh.c:1.77  Thu Jul  7 07:19:56 2005
+++ php-src/ext/pdo/pdo_dbh.c   Thu Jul  7 13:08:01 2005
@@ -18,7 +18,7 @@
   +--+
 */
 
-/* $Id: pdo_dbh.c,v 1.77 2005/07/07 11:19:56 dmitry Exp $ */
+/* $Id: pdo_dbh.c,v 1.78 2005/07/07 17:08:01 wez Exp $ */
 
 /* The PDO Database Handle Class */
 
@@ -390,6 +390,8 @@
php_error_docref(NULL TSRMLS_CC, E_ERROR, 
Failed to register persistent entry);
}
}
+
+   dbh-driver = driver;
return; 
}
 
@@ -744,6 +746,8 @@
case PDO_ATTR_ERRMODE:
RETURN_LONG(dbh-error_mode);
 
+   case PDO_ATTR_DRIVER_NAME:
+   RETURN_STRINGL(dbh-driver-driver_name, 
dbh-driver-driver_name_len, 1);
}

if (!dbh-methods-get_attribute) {

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



[PHP-CVS] cvs: php-src /ext/pdo pdo.c pdo_dbh.c pdo_stmt.c php_pdo_driver.h /ext/pdo/tests pdo_test.inc

2005-07-07 Thread Wez Furlong
wez Fri Jul  8 00:13:01 2005 EDT

  Modified files:  
/php-src/ext/pdopdo.c pdo_dbh.c pdo_stmt.c php_pdo_driver.h 
/php-src/ext/pdo/tests  pdo_test.inc 
  Log:
  Add a PDO_ATTR_STRINGIFY_FETCHES attribute, which is used to convert integer 
or
  floating point values into strings during fetch.  This is a compatibility hack
  for drivers that return native types rather than string representations.
  
  We use this flag in the test suite to persuade postgres tests to pass.
  
  
  
http://cvs.php.net/diff.php/php-src/ext/pdo/pdo.c?r1=1.53r2=1.54ty=u
Index: php-src/ext/pdo/pdo.c
diff -u php-src/ext/pdo/pdo.c:1.53 php-src/ext/pdo/pdo.c:1.54
--- php-src/ext/pdo/pdo.c:1.53  Thu Jul  7 13:08:01 2005
+++ php-src/ext/pdo/pdo.c   Fri Jul  8 00:12:57 2005
@@ -18,7 +18,7 @@
   +--+
 */
 
-/* $Id: pdo.c,v 1.53 2005/07/07 17:08:01 wez Exp $ */
+/* $Id: pdo.c,v 1.54 2005/07/08 04:12:57 wez Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -337,6 +337,7 @@
REGISTER_LONG_CONSTANT(PDO_ATTR_FETCH_TABLE_NAMES,
(long)PDO_ATTR_FETCH_TABLE_NAMES,   
CONST_CS|CONST_PERSISTENT);
REGISTER_LONG_CONSTANT(PDO_ATTR_FETCH_CATALOG_NAMES,  
(long)PDO_ATTR_FETCH_CATALOG_NAMES, 
CONST_CS|CONST_PERSISTENT);
REGISTER_LONG_CONSTANT(PDO_ATTR_DRIVER_NAME,  
(long)PDO_ATTR_DRIVER_NAME, CONST_CS|CONST_PERSISTENT);
+   
REGISTER_LONG_CONSTANT(PDO_ATTR_STRINGIFY_FETCHES,(long)PDO_ATTR_STRINGIFY_FETCHES,
   CONST_CS|CONST_PERSISTENT);

REGISTER_LONG_CONSTANT(PDO_ERRMODE_SILENT,
(long)PDO_ERRMODE_SILENT,   CONST_CS|CONST_PERSISTENT);
REGISTER_LONG_CONSTANT(PDO_ERRMODE_WARNING,   
(long)PDO_ERRMODE_WARNING,  CONST_CS|CONST_PERSISTENT);
http://cvs.php.net/diff.php/php-src/ext/pdo/pdo_dbh.c?r1=1.78r2=1.79ty=u
Index: php-src/ext/pdo/pdo_dbh.c
diff -u php-src/ext/pdo/pdo_dbh.c:1.78 php-src/ext/pdo/pdo_dbh.c:1.79
--- php-src/ext/pdo/pdo_dbh.c:1.78  Thu Jul  7 13:08:01 2005
+++ php-src/ext/pdo/pdo_dbh.c   Fri Jul  8 00:12:58 2005
@@ -18,7 +18,7 @@
   +--+
 */
 
-/* $Id: pdo_dbh.c,v 1.78 2005/07/07 17:08:01 wez Exp $ */
+/* $Id: pdo_dbh.c,v 1.79 2005/07/08 04:12:58 wez Exp $ */
 
 /* The PDO Database Handle Class */
 
@@ -693,6 +693,11 @@
convert_to_long(value);
dbh-oracle_nulls = Z_LVAL_P(value) ? 1 : 0;
RETURN_TRUE;
+
+   case PDO_ATTR_STRINGIFY_FETCHES:
+   convert_to_long(value);
+   dbh-stringify = Z_LVAL_P(value) ? 1 : 0;
+   RETURN_TRUE;

default:
;
http://cvs.php.net/diff.php/php-src/ext/pdo/pdo_stmt.c?r1=1.104r2=1.105ty=u
Index: php-src/ext/pdo/pdo_stmt.c
diff -u php-src/ext/pdo/pdo_stmt.c:1.104 php-src/ext/pdo/pdo_stmt.c:1.105
--- php-src/ext/pdo/pdo_stmt.c:1.104Thu Jul  7 11:14:10 2005
+++ php-src/ext/pdo/pdo_stmt.c  Fri Jul  8 00:12:58 2005
@@ -18,7 +18,7 @@
   +--+
 */
 
-/* $Id: pdo_stmt.c,v 1.104 2005/07/07 15:14:10 iliaa Exp $ */
+/* $Id: pdo_stmt.c,v 1.105 2005/07/08 04:12:58 wez Exp $ */
 
 /* The PDO Statement Handle Class */
 
@@ -481,6 +481,15 @@
if (caller_frees  value) {
efree(value);
}
+
+   if (stmt-dbh-stringify) {
+   switch (Z_TYPE_P(dest)) {
+   case IS_LONG:
+   case IS_DOUBLE:
+   convert_to_string(dest);
+   break;
+   }
+   }
 }
 /* }}} */
 
http://cvs.php.net/diff.php/php-src/ext/pdo/php_pdo_driver.h?r1=1.60r2=1.61ty=u
Index: php-src/ext/pdo/php_pdo_driver.h
diff -u php-src/ext/pdo/php_pdo_driver.h:1.60 
php-src/ext/pdo/php_pdo_driver.h:1.61
--- php-src/ext/pdo/php_pdo_driver.h:1.60   Thu Jul  7 12:24:51 2005
+++ php-src/ext/pdo/php_pdo_driver.hFri Jul  8 00:12:58 2005
@@ -16,7 +16,7 @@
   +--+
 */
 
-/* $Id: php_pdo_driver.h,v 1.60 2005/07/07 16:24:51 wez Exp $ */
+/* $Id: php_pdo_driver.h,v 1.61 2005/07/08 04:12:58 wez Exp $ */
 
 #ifndef PHP_PDO_DRIVER_H
 #define PHP_PDO_DRIVER_H
@@ -44,7 +44,7 @@
 # define FALSE 0
 #endif
 
-#define PDO_DRIVER_API 20050707
+#define PDO_DRIVER_API 20050708
 
 enum pdo_param_type {
PDO_PARAM_NULL,
@@ -127,6 +127,7 @@
PDO_ATTR_FETCH_TABLE_NAMES, /* include table names in the column names, 
where available */
PDO_ATTR_FETCH_CATALOG_NAMES, /* include the catalog/db name names in 
the column names, where available */
PDO_ATTR_DRIVER_NAME, /* name of the driver (as used in the 
constructor) */
+   

[PHP-CVS] cvs: php-src /ext/pdo pdo.c pdo_stmt.c php_pdo_driver.h

2005-07-02 Thread Wez Furlong
wez Sat Jul  2 23:49:45 2005 EDT

  Modified files:  
/php-src/ext/pdopdo.c pdo_stmt.c php_pdo_driver.h 
  Log:
  Add PDO_FETCH_NAMED; closes PECL #4641 by providing a way to access columns
  by name, even when multiple columns have the same name:
  
  $sql = SELECT 1 a, 2 a, 3 b, 4 c, 5 d, 6 c, 7 a;
  echo $sql\n;
  print_r($db-query($sql)-fetchAll(PDO_FETCH_NAMED));
  
  Array
  (
  [0] = Array
  (
  [a] = Array
  (
  [0] = 1
  [1] = 2
  [2] = 7
  )
  
  [b] = 3
  [c] = Array
  (
  [0] = 4
  [1] = 6
  )
  
  [d] = 5
  )
  )
  
  Also added two new attributes for use at prepare time;
  PDO_ATTR_FETCH_TABLE_NAMES and PDO_ATTR_FETCH_CATALOG_NAMES instruct the 
driver
  that the names of the columns that they return to PDO should include the table
  and catalog names respectively.  Both attributes may be used together or
  independently.  The catalog, table and column name components should be
  separated by a . character.
  
  
  
http://cvs.php.net/diff.php/php-src/ext/pdo/pdo.c?r1=1.51r2=1.52ty=u
Index: php-src/ext/pdo/pdo.c
diff -u php-src/ext/pdo/pdo.c:1.51 php-src/ext/pdo/pdo.c:1.52
--- php-src/ext/pdo/pdo.c:1.51  Wed Jun 22 20:19:15 2005
+++ php-src/ext/pdo/pdo.c   Sat Jul  2 23:49:44 2005
@@ -18,7 +18,7 @@
   +--+
 */
 
-/* $Id: pdo.c,v 1.51 2005/06/23 00:19:15 helly Exp $ */
+/* $Id: pdo.c,v 1.52 2005/07/03 03:49:44 wez Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -318,6 +318,7 @@
 #if PHP_MAJOR_VERSION  5 || PHP_MINOR_VERSION = 1
REGISTER_LONG_CONSTANT(PDO_FETCH_SERIALIZE,(long)PDO_FETCH_SERIALIZE, 
CONST_CS|CONST_PERSISTENT);
 #endif
+   REGISTER_LONG_CONSTANT(PDO_FETCH_NAMED,(long)PDO_FETCH_NAMED, 
CONST_CS|CONST_PERSISTENT);
 
REGISTER_LONG_CONSTANT(PDO_ATTR_AUTOCOMMIT,   
(long)PDO_ATTR_AUTOCOMMIT,  CONST_CS|CONST_PERSISTENT);
REGISTER_LONG_CONSTANT(PDO_ATTR_PREFETCH, 
(long)PDO_ATTR_PREFETCH,CONST_CS|CONST_PERSISTENT);
@@ -333,6 +334,8 @@
REGISTER_LONG_CONSTANT(PDO_ATTR_ORACLE_NULLS, 
(long)PDO_ATTR_ORACLE_NULLS,CONST_CS|CONST_PERSISTENT);
REGISTER_LONG_CONSTANT(PDO_ATTR_PERSISTENT,   
(long)PDO_ATTR_PERSISTENT,  CONST_CS|CONST_PERSISTENT);
REGISTER_LONG_CONSTANT(PDO_ATTR_STATEMENT_CLASS,  
(long)PDO_ATTR_STATEMENT_CLASS, CONST_CS|CONST_PERSISTENT);
+   REGISTER_LONG_CONSTANT(PDO_ATTR_FETCH_TABLE_NAMES,
(long)PDO_ATTR_FETCH_TABLE_NAMES,   
CONST_CS|CONST_PERSISTENT);
+   REGISTER_LONG_CONSTANT(PDO_ATTR_FETCH_CATALOG_NAMES,  
(long)PDO_ATTR_FETCH_CATALOG_NAMES, 
CONST_CS|CONST_PERSISTENT);

REGISTER_LONG_CONSTANT(PDO_ERRMODE_SILENT,
(long)PDO_ERRMODE_SILENT,   CONST_CS|CONST_PERSISTENT);
REGISTER_LONG_CONSTANT(PDO_ERRMODE_WARNING,   
(long)PDO_ERRMODE_WARNING,  CONST_CS|CONST_PERSISTENT);
http://cvs.php.net/diff.php/php-src/ext/pdo/pdo_stmt.c?r1=1.100r2=1.101ty=u
Index: php-src/ext/pdo/pdo_stmt.c
diff -u php-src/ext/pdo/pdo_stmt.c:1.100 php-src/ext/pdo/pdo_stmt.c:1.101
--- php-src/ext/pdo/pdo_stmt.c:1.100Sat Jul  2 13:19:58 2005
+++ php-src/ext/pdo/pdo_stmt.c  Sat Jul  2 23:49:44 2005
@@ -18,7 +18,7 @@
   +--+
 */
 
-/* $Id: pdo_stmt.c,v 1.100 2005/07/02 17:19:58 iliaa Exp $ */
+/* $Id: pdo_stmt.c,v 1.101 2005/07/03 03:49:44 wez Exp $ */
 
 /* The PDO Statement Handle Class */
 
@@ -735,6 +735,7 @@
case PDO_FETCH_ASSOC:
case PDO_FETCH_BOTH:
case PDO_FETCH_NUM:
+   case PDO_FETCH_NAMED:
array_init(return_value);
break;
 
@@ -842,6 +843,43 @@
add_next_index_zval(return_value, val);
break;
 
+   case PDO_FETCH_NAMED:
+   /* already have an item with this name? 
*/
+   {
+   zval **curr_val = NULL;
+   if 
(zend_hash_find(Z_ARRVAL_P(return_value), stmt-columns[i].name,
+   
strlen(stmt-columns[i].name)+1,
+   
(void**)curr_val) == SUCCESS) {
+   zval *arr;
+   if (Z_TYPE_PP(curr_val) 
!= IS_ARRAY) {
+ 

[PHP-CVS] cvs: php-src /ext/pdo pdo.c

2005-06-10 Thread Wez Furlong
wez Fri Jun 10 02:11:30 2005 EDT

  Modified files:  
/php-src/ext/pdopdo.c 
  Log:
  Fix PECL #4411
  SPL is not initialized before PDO, so inheriting from SPL's runtime exception 
class gives PDO a broken exception class.
  We don't currently have a way to express this kind of soft dependency in 
the build system, so I'm disabling inheriting from the runtime exception for 
now.
  
  
  
http://cvs.php.net/diff.php/php-src/ext/pdo/pdo.c?r1=1.48r2=1.49ty=u
Index: php-src/ext/pdo/pdo.c
diff -u php-src/ext/pdo/pdo.c:1.48 php-src/ext/pdo/pdo.c:1.49
--- php-src/ext/pdo/pdo.c:1.48  Tue Mar 29 12:23:36 2005
+++ php-src/ext/pdo/pdo.c   Fri Jun 10 02:11:29 2005
@@ -18,7 +18,7 @@
   +--+
 */
 
-/* $Id: pdo.c,v 1.48 2005/03/29 17:23:36 tony2001 Exp $ */
+/* $Id: pdo.c,v 1.49 2005/06/10 06:11:29 wez Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -352,7 +352,7 @@
 #endif
 
INIT_CLASS_ENTRY(ce, PDOException, NULL);
-#if defined(HAVE_SPL)  ((PHP_MAJOR_VERSION  5) || (PHP_MAJOR_VERSION == 5 
 PHP_MINOR_VERSION = 1))
+#if can_handle_soft_dependency_on_SPL  defined(HAVE_SPL)  
((PHP_MAJOR_VERSION  5) || (PHP_MAJOR_VERSION == 5  PHP_MINOR_VERSION = 1))
pdo_exception_ce = zend_register_internal_class_ex(ce, 
spl_ce_RuntimeException, NULL TSRMLS_CC);
 #else
pdo_exception_ce = zend_register_internal_class_ex(ce, 
zend_exception_get_default(), NULL TSRMLS_CC);

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



Re: [PHP-CVS] cvs: php-src /ext/pdo pdo.c

2005-06-10 Thread Marcus Boerger
Hello Wez,

  we could check if spl is initialized and if not forcefully initialize it
in pdo's MINIT.

marcus

Friday, June 10, 2005, 8:11:30 AM, you wrote:

 wez Fri Jun 10 02:11:30 2005 EDT

   Modified files:  
 /php-src/ext/pdopdo.c 
   Log:
   Fix PECL #4411
   SPL is not initialized before PDO, so inheriting from SPL's runtime
 exception class gives PDO a broken exception class.
   We don't currently have a way to express this kind of soft
 dependency in the build system, so I'm disabling inheriting from the
 runtime exception for now.
  
  
  
 http://cvs.php.net/diff.php/php-src/ext/pdo/pdo.c?r1=1.48r2=1.49ty=u
 Index: php-src/ext/pdo/pdo.c
 diff -u php-src/ext/pdo/pdo.c:1.48 php-src/ext/pdo/pdo.c:1.49
 --- php-src/ext/pdo/pdo.c:1.48  Tue Mar 29 12:23:36 2005
 +++ php-src/ext/pdo/pdo.c   Fri Jun 10 02:11:29 2005
 @@ -18,7 +18,7 @@
   
 +--+
  */
 
 -/* $Id: pdo.c,v 1.48 2005/03/29 17:23:36 tony2001 Exp $ */
 +/* $Id: pdo.c,v 1.49 2005/06/10 06:11:29 wez Exp $ */
 
  #ifdef HAVE_CONFIG_H
  #include config.h
 @@ -352,7 +352,7 @@
  #endif
 
 INIT_CLASS_ENTRY(ce, PDOException, NULL);
 -#if defined(HAVE_SPL)  ((PHP_MAJOR_VERSION  5) ||
 (PHP_MAJOR_VERSION == 5  PHP_MINOR_VERSION = 1))
 +#if can_handle_soft_dependency_on_SPL  defined(HAVE_SPL) 
 ((PHP_MAJOR_VERSION  5) || (PHP_MAJOR_VERSION == 5  PHP_MINOR_VERSION
 = 1))
 pdo_exception_ce = zend_register_internal_class_ex(ce,
 spl_ce_RuntimeException, NULL TSRMLS_CC);
  #else
 pdo_exception_ce = zend_register_internal_class_ex(ce,
 zend_exception_get_default(), NULL TSRMLS_CC);




-- 
Best regards,
 Marcusmailto:[EMAIL PROTECTED]

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



Re: [PHP-CVS] cvs: php-src /ext/pdo pdo.c

2005-06-10 Thread Jani Taskinen


That patch of mine to the extension loading mechanism should fix this?
Just add a dependancy of spl to pdo..and fix the 'delayed' startup routine. 
:)

--Jani

On Fri, 10 Jun 2005, Marcus Boerger wrote:


Hello Wez,

 we could check if spl is initialized and if not forcefully initialize it
in pdo's MINIT.

marcus

Friday, June 10, 2005, 8:11:30 AM, you wrote:


wez Fri Jun 10 02:11:30 2005 EDT



  Modified files:
/php-src/ext/pdopdo.c
  Log:
  Fix PECL #4411
  SPL is not initialized before PDO, so inheriting from SPL's runtime
exception class gives PDO a broken exception class.
  We don't currently have a way to express this kind of soft
dependency in the build system, so I'm disabling inheriting from the
runtime exception for now.





http://cvs.php.net/diff.php/php-src/ext/pdo/pdo.c?r1=1.48r2=1.49ty=u
Index: php-src/ext/pdo/pdo.c
diff -u php-src/ext/pdo/pdo.c:1.48 php-src/ext/pdo/pdo.c:1.49
--- php-src/ext/pdo/pdo.c:1.48  Tue Mar 29 12:23:36 2005
+++ php-src/ext/pdo/pdo.c   Fri Jun 10 02:11:29 2005
@@ -18,7 +18,7 @@

+--+
 */



-/* $Id: pdo.c,v 1.48 2005/03/29 17:23:36 tony2001 Exp $ */
+/* $Id: pdo.c,v 1.49 2005/06/10 06:11:29 wez Exp $ */



 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -352,7 +352,7 @@
 #endif



INIT_CLASS_ENTRY(ce, PDOException, NULL);
-#if defined(HAVE_SPL)  ((PHP_MAJOR_VERSION  5) ||
(PHP_MAJOR_VERSION == 5  PHP_MINOR_VERSION = 1))
+#if can_handle_soft_dependency_on_SPL  defined(HAVE_SPL) 
((PHP_MAJOR_VERSION  5) || (PHP_MAJOR_VERSION == 5  PHP_MINOR_VERSION

= 1))

pdo_exception_ce = zend_register_internal_class_ex(ce,
spl_ce_RuntimeException, NULL TSRMLS_CC);
 #else
pdo_exception_ce = zend_register_internal_class_ex(ce,
zend_exception_get_default(), NULL TSRMLS_CC);








--
Donate @ http://pecl.php.net/wishlist.php/sniper

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



Re: [PHP-CVS] cvs: php-src /ext/pdo pdo.c

2005-06-10 Thread Wez Furlong
Yeah, that's what I'm thinking--would you mind posting that to
internals for consideration for 5.1?

I think it would be a strong addition.

--Wez.

On 6/10/05, Jani Taskinen [EMAIL PROTECTED] wrote:
 
  That patch of mine to the extension loading mechanism should fix this?
  Just add a dependancy of spl to pdo..and fix the 'delayed' startup 
 routine. :)
 
  --Jani
 
 On Fri, 10 Jun 2005, Marcus Boerger wrote:
 
  Hello Wez,
 
   we could check if spl is initialized and if not forcefully initialize it
  in pdo's MINIT.
 
  marcus
 
  Friday, June 10, 2005, 8:11:30 AM, you wrote:
 
  wez Fri Jun 10 02:11:30 2005 EDT
 
Modified files:
  /php-src/ext/pdopdo.c
Log:
Fix PECL #4411
SPL is not initialized before PDO, so inheriting from SPL's runtime
  exception class gives PDO a broken exception class.
We don't currently have a way to express this kind of soft
  dependency in the build system, so I'm disabling inheriting from the
  runtime exception for now.
 
 
 
  http://cvs.php.net/diff.php/php-src/ext/pdo/pdo.c?r1=1.48r2=1.49ty=u
  Index: php-src/ext/pdo/pdo.c
  diff -u php-src/ext/pdo/pdo.c:1.48 php-src/ext/pdo/pdo.c:1.49
  --- php-src/ext/pdo/pdo.c:1.48  Tue Mar 29 12:23:36 2005
  +++ php-src/ext/pdo/pdo.c   Fri Jun 10 02:11:29 2005
  @@ -18,7 +18,7 @@
 
  +--+
   */
 
  -/* $Id: pdo.c,v 1.48 2005/03/29 17:23:36 tony2001 Exp $ */
  +/* $Id: pdo.c,v 1.49 2005/06/10 06:11:29 wez Exp $ */
 
   #ifdef HAVE_CONFIG_H
   #include config.h
  @@ -352,7 +352,7 @@
   #endif
 
  INIT_CLASS_ENTRY(ce, PDOException, NULL);
  -#if defined(HAVE_SPL)  ((PHP_MAJOR_VERSION  5) ||
  (PHP_MAJOR_VERSION == 5  PHP_MINOR_VERSION = 1))
  +#if can_handle_soft_dependency_on_SPL  defined(HAVE_SPL) 
  ((PHP_MAJOR_VERSION  5) || (PHP_MAJOR_VERSION == 5  PHP_MINOR_VERSION
  = 1))
  pdo_exception_ce = zend_register_internal_class_ex(ce,
  spl_ce_RuntimeException, NULL TSRMLS_CC);
   #else
  pdo_exception_ce = zend_register_internal_class_ex(ce,
  zend_exception_get_default(), NULL TSRMLS_CC);
 
 
 
 
 
 
 --
 Donate @ http://pecl.php.net/wishlist.php/sniper
 
 --
 PHP CVS Mailing List (http://www.php.net/)
 To unsubscribe, visit: http://www.php.net/unsub.php
 


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



[PHP-CVS] cvs: php-src /ext/pdo pdo.c

2005-03-29 Thread Antony Dovgal
tony2001Tue Mar 29 12:23:37 2005 EDT

  Modified files:  
/php-src/ext/pdopdo.c 
  Log:
  fix segfault  buffer overrun when there is no PDO drivers plugged in
  (patch by [EMAIL PROTECTED])
  
  
http://cvs.php.net/diff.php/php-src/ext/pdo/pdo.c?r1=1.47r2=1.48ty=u
Index: php-src/ext/pdo/pdo.c
diff -u php-src/ext/pdo/pdo.c:1.47 php-src/ext/pdo/pdo.c:1.48
--- php-src/ext/pdo/pdo.c:1.47  Tue Mar 22 05:36:25 2005
+++ php-src/ext/pdo/pdo.c   Tue Mar 29 12:23:36 2005
@@ -18,7 +18,7 @@
   +--+
 */
 
-/* $Id: pdo.c,v 1.47 2005/03/22 10:36:25 helly Exp $ */
+/* $Id: pdo.c,v 1.48 2005/03/29 17:23:36 tony2001 Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -410,9 +410,11 @@
ldrivers = drivers;
}

-   php_info_print_table_row(2, PDO drivers, drivers+2);
-   
-   efree(drivers);
+   php_info_print_table_row(2, PDO drivers, drivers ? drivers+2 : );
+
+   if (drivers) {
+   efree(drivers);
+   }
 
php_info_print_table_end();
 

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



[PHP-CVS] cvs: php-src /ext/pdo pdo.c pdo_dbh.c php_pdo_driver.h /ext/pdo_mysql mysql_driver.c /ext/pdo_pgsql pgsql_driver.c /ext/pdo_sqlite sqlite_driver.c

2005-02-26 Thread Wez Furlong
wez Sat Feb 26 12:27:51 2005 EDT

  Modified files:  
/php-src/ext/pdopdo.c pdo_dbh.c php_pdo_driver.h 
/php-src/ext/pdo_mysql  mysql_driver.c 
/php-src/ext/pdo_pgsql  pgsql_driver.c 
/php-src/ext/pdo_sqlite sqlite_driver.c 
  Log:
  Alan: moved your fields away, but reserved you a pointer.
  
  Changed PDO::lastInsertId() to have following proto:
  
string PDO::lastInsertId([string name])
  
  this allows arbitrary unique identitifers to be returned from the driver.
  
  The optional name parameter is for databases that require additional 
contextual
  information to be able to return the correct identifier.  None currently use
  it, but pgsql will be on the list of drivers that do.
  
  
  http://cvs.php.net/diff.php/php-src/ext/pdo/pdo.c?r1=1.38r2=1.39ty=u
Index: php-src/ext/pdo/pdo.c
diff -u php-src/ext/pdo/pdo.c:1.38 php-src/ext/pdo/pdo.c:1.39
--- php-src/ext/pdo/pdo.c:1.38  Tue Feb 22 19:52:14 2005
+++ php-src/ext/pdo/pdo.c   Sat Feb 26 12:27:51 2005
@@ -18,7 +18,7 @@
   +--+
 */
 
-/* $Id: pdo.c,v 1.38 2005/02/23 00:52:14 helly Exp $ */
+/* $Id: pdo.c,v 1.39 2005/02/26 17:27:51 wez Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -203,7 +203,47 @@
 
return n_matches;
 }
-   
+
+static const char digit_vec[] = 0123456789;
+PDO_API char *php_pdo_int64_to_str(pdo_int64_t i64 TSRMLS_DC)
+{
+   char buffer[65];
+   char outbuf[65] = ;
+   register char *p;
+   long long_val;
+   char *dst = outbuf;
+
+   if (i64  0) {
+   i64 = -i64;
+   *dst++ = '-';
+   }
+
+   if (i64 == 0) {
+   *dst++ = '0';
+   *dst++ = '\0';
+   return estrdup(outbuf);
+   }
+
+   p = buffer[sizeof(buffer)-1];
+   *p = '\0';
+
+   while ((pdo_uint64_t)i64  (pdo_uint64_t)LONG_MAX) {
+   pdo_uint64_t quo = (pdo_uint64_t)i64 / (unsigned int)10;
+   unsigned int rem = (unsigned int)(i64 - quo*10U);
+   *--p = digit_vec[rem];
+   i64 = (pdo_int64_t)quo;
+   }
+   long_val = (long)i64;
+   while (long_val != 0) {
+   long quo = long_val / 10;
+   *--p = digit_vec[(unsigned int)(long_val - quo * 10)];
+   long_val = quo;
+   }
+   while ((*dst++ = *p++) != 0)
+   ;
+   *dst = '\0';
+   return estrdup(outbuf);
+}
 
 /* {{{ PHP_MINIT_FUNCTION */
 PHP_MINIT_FUNCTION(pdo)
http://cvs.php.net/diff.php/php-src/ext/pdo/pdo_dbh.c?r1=1.63r2=1.64ty=u
Index: php-src/ext/pdo/pdo_dbh.c
diff -u php-src/ext/pdo/pdo_dbh.c:1.63 php-src/ext/pdo/pdo_dbh.c:1.64
--- php-src/ext/pdo/pdo_dbh.c:1.63  Wed Feb 23 18:28:30 2005
+++ php-src/ext/pdo/pdo_dbh.c   Sat Feb 26 12:27:51 2005
@@ -18,7 +18,7 @@
   +--+
 */
 
-/* $Id: pdo_dbh.c,v 1.63 2005/02/23 23:28:30 helly Exp $ */
+/* $Id: pdo_dbh.c,v 1.64 2005/02/26 17:27:51 wez Exp $ */
 
 /* The PDO Database Handle Class */
 
@@ -752,13 +752,15 @@
 /* }}} */
 
 
-/* {{{ proto int PDO::lastInsertId()
-   Returns the number id of rows that we affected by the last call to 
PDO::exec().  Not always meaningful. */
+/* {{{ proto string PDO::lastInsertId([string seqname])
+   Returns the id of the last row that we affected on this connection.  Some 
databases require a sequence or table name to be passed in.  Not always 
meaningful. */
 static PHP_METHOD(PDO, lastInsertId)
 {
pdo_dbh_t *dbh = zend_object_store_get_object(getThis() TSRMLS_CC);
+   char *name = NULL;
+   int namelen;
 
-   if (ZEND_NUM_ARGS()) {
+   if (FAILURE == zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, |s!, 
name, namelen)) {
RETURN_FALSE;
}
 
@@ -767,7 +769,13 @@
pdo_raise_impl_error(dbh, NULL, IM001, driver does not 
support lastInsertId() TSRMLS_CC);
RETURN_FALSE;
} else {
-   RETURN_LONG(dbh-methods-last_id(dbh TSRMLS_CC));
+   Z_STRVAL_P(return_value) = dbh-methods-last_id(dbh, name, 
Z_STRLEN_P(return_value) TSRMLS_CC);
+   if (!Z_STRVAL_P(return_value)) {
+   PDO_HANDLE_DBH_ERR();
+   RETURN_FALSE;
+   } else {
+   Z_TYPE_P(return_value) = IS_STRING;
+   }
}
 }
 /* }}} */
http://cvs.php.net/diff.php/php-src/ext/pdo/php_pdo_driver.h?r1=1.53r2=1.54ty=u
Index: php-src/ext/pdo/php_pdo_driver.h
diff -u php-src/ext/pdo/php_pdo_driver.h:1.53 
php-src/ext/pdo/php_pdo_driver.h:1.54
--- php-src/ext/pdo/php_pdo_driver.h:1.53   Tue Feb 22 15:25:55 2005
+++ php-src/ext/pdo/php_pdo_driver.hSat Feb 26 12:27:51 2005
@@ -16,7 +16,7 @@
   +--+
 */
 
-/* $Id: php_pdo_driver.h,v 1.53 2005/02/22 20:25:55 helly Exp $ */
+/* $Id: