tony2001                Tue Aug 15 12:27:24 2006 UTC

  Modified files:              (Branch: PHP_5_2)
    /php-src/ext/oci8   oci8.c 
  Log:
  MFH: error message might be NULL
  
  
http://cvs.php.net/viewvc.cgi/php-src/ext/oci8/oci8.c?r1=1.269.2.16.2.16&r2=1.269.2.16.2.17&diff_format=u
Index: php-src/ext/oci8/oci8.c
diff -u php-src/ext/oci8/oci8.c:1.269.2.16.2.16 
php-src/ext/oci8/oci8.c:1.269.2.16.2.17
--- php-src/ext/oci8/oci8.c:1.269.2.16.2.16     Tue Aug 15 12:19:46 2006
+++ php-src/ext/oci8/oci8.c     Tue Aug 15 12:27:24 2006
@@ -26,7 +26,7 @@
    +----------------------------------------------------------------------+
 */
 
-/* $Id: oci8.c,v 1.269.2.16.2.16 2006/08/15 12:19:46 tony2001 Exp $ */
+/* $Id: oci8.c,v 1.269.2.16.2.17 2006/08/15 12:27:24 tony2001 Exp $ */
 /* TODO
  *
  * file://localhost/www/docs/oci10/ociaahan.htm#423823 - implement lob_empty() 
with OCI_ATTR_LOBEMPTY
@@ -426,7 +426,7 @@
        if (error_code) {
                int tmp_buf_len = strlen(tmp_buf);
 
-               if (tmp_buf[tmp_buf_len - 1] == '\n') {
+               if (tmp_buf_len > 0 && tmp_buf[tmp_buf_len - 1] == '\n') {
                        tmp_buf[tmp_buf_len - 1] = '\0';
                }
                        
@@ -653,7 +653,7 @@
        php_info_print_table_start();
        php_info_print_table_row(2, "OCI8 Support", "enabled");
        php_info_print_table_row(2, "Version", "1.2.1");
-       php_info_print_table_row(2, "Revision", "$Revision: 1.269.2.16.2.16 $");
+       php_info_print_table_row(2, "Revision", "$Revision: 1.269.2.16.2.17 $");
 
        sprintf(buf, "%ld", OCI_G(num_persistent));
        php_info_print_table_row(2, "Active Persistent Connections", buf);
@@ -845,8 +845,12 @@
                        break;
                case OCI_SUCCESS_WITH_INFO:
                        errcode = php_oci_fetch_errmsg(err_p, &errbuf 
TSRMLS_CC);
-                       php_error_docref(NULL TSRMLS_CC, E_WARNING, 
"OCI_SUCCESS_WITH_INFO: %s", errbuf);
-                       efree(errbuf);
+                       if (errbuf) {
+                               php_error_docref(NULL TSRMLS_CC, E_WARNING, 
"OCI_SUCCESS_WITH_INFO: %s", errbuf);
+                               efree(errbuf);
+                       } else {
+                               php_error_docref(NULL TSRMLS_CC, E_WARNING, 
"OCI_SUCCESS_WITH_INFO: failed to fetch error message");
+                       }
                        break;
                case OCI_NEED_DATA:
                        php_error_docref(NULL TSRMLS_CC, E_WARNING, 
"OCI_NEED_DATA");
@@ -856,8 +860,12 @@
                        break;
                case OCI_ERROR: 
                        errcode = php_oci_fetch_errmsg(err_p, &errbuf 
TSRMLS_CC);
-                       php_error_docref(NULL TSRMLS_CC, E_WARNING, "%s", 
errbuf);
-                       efree(errbuf);
+                       if (errbuf) {
+                               php_error_docref(NULL TSRMLS_CC, E_WARNING, 
"%s", errbuf);
+                               efree(errbuf);
+                       } else {
+                               php_error_docref(NULL TSRMLS_CC, E_WARNING, 
"failed to fetch error message");
+                       }
                        break;
                case OCI_INVALID_HANDLE:
                        php_error_docref(NULL TSRMLS_CC, E_WARNING, 
"OCI_INVALID_HANDLE");



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

Reply via email to