ID:               35552
 Updated by:       [EMAIL PROTECTED]
 Reported By:      humbads at alum dot mit dot edu
-Status:           Open
+Status:           Assigned
 Bug Type:         PDO related
 Operating System: Windows XP SP2
 PHP Version:      5CVS-2005-12-14 (snap)
 Assigned To:      wez


Previous Comments:
------------------------------------------------------------------------

[2005-12-14 09:11:23] humbads at alum dot mit dot edu

This one still gives an exception, but it is different from before. 
The call stack is one thousand deep. I'm using snapshot
php5.1-win32-200512140730.zip.

Unhandled exception at 0x005f1164 (php_pdo_odbc.dll) in php-cgi.exe:
0xC0000005: Access violation writing location 0x00000012.

>       php_pdo_odbc.dll!pdo_odbc_error(_pdo_dbh_t * dbh=0x0071e338,
_pdo_stmt_t * stmt=0x0071e850, void * statement=0x00000000, char *
what=0x005f3194, const char * file=0x005f31cc, int line=202, void * * *
tsrm_ls=0x00324090)  Line 101 + 0x7     C
        php_pdo_odbc.dll!odbc_handle_preparer(_pdo_dbh_t * dbh=0x0071e338,
const char * sql=0x0071e510, long sql_len=13, _pdo_stmt_t *
stmt=0x0071e850, _zval_struct * driver_options=0x00000000, void * * *
tsrm_ls=0x00324090)  Line 202 + 0x20    C
        php_pdo.dll!zif_PDO_query(int ht=1, _zval_struct *
return_value=0x0071e4a0, _zval_struct * * return_value_ptr=0x00000000,
_zval_struct * this_ptr=0x0071e510, int return_value_used=0, void * * *
tsrm_ls=0x0000000d)  Line 992 + 0x2f    C
        php5ts.dll!10018d52()   
        php5ts.dll!100b4b32()   
        php5ts.dll!10018765()   
        php5ts.dll!100186e5()   
        php5ts.dll!10008d52()   
... ... REPEATS MANY TIMES
        php5ts.dll!100a7b94()   
        php5ts.dll!10002e2d()   
        msvcrt.dll!_free()  + 0xc3      
        [EMAIL PROTECTED]()  + 0x130    
        00300030()      
        [EMAIL PROTECTED]()  + 0x25     
        odbc32.dll!_MPLeaveCriticalSection()  + 0x17    
        0012fa34()      
        [EMAIL PROTECTED]()  + 0x96     
        php_pdo_odbc.dll!odbc_handle_preparer(_pdo_dbh_t * dbh=0x0071e338,
const char * sql=0x0071e510, long sql_len=13, _pdo_stmt_t *
stmt=0x0071e850, _zval_struct * driver_options=0x00000000, void * * *
tsrm_ls=0x00324090)  Line 202 + 0x20    C
        php_pdo.dll!zif_PDO_query(int ht=1, _zval_struct *
return_value=0x0071e4a0, _zval_struct * * return_value_ptr=0x00000000,
_zval_struct * this_ptr=0x0071e510, int return_value_used=0, void * * *
tsrm_ls=0x0000000d)  Line 992 + 0x2f    C
        php5ts.dll!10018d52()   
        php5ts.dll!100b4b32()   
        php5ts.dll!10018765()   
        php5ts.dll!100186e5()   
        php5ts.dll!10008d52()

------------------------------------------------------------------------

[2005-12-14 06:02:19] [EMAIL PROTECTED]

I made an adjustment to the way that we pull out the error information;
I'm not sure that it will have resolved this particular issue, but it's
worth trying it out while you're checking to see if #35620 is fixed.

------------------------------------------------------------------------

[2005-12-05 18:54:18] humbads at alum dot mit dot edu

This is with the latest snapshot release:
php5.1-win32-200512051530.zip

Here is the stack trace:

>       [EMAIL PROTECTED]()  + 0x6a     
        [EMAIL PROTECTED]()  + 0x120    
        [EMAIL PROTECTED]()  + 0xaa     
        php_pdo_odbc.dll!pdo_odbc_error(_pdo_dbh_t * dbh=0x0071e6c8,
_pdo_stmt_t * stmt=0x0071ebb8, void * statement=0x00000000, char *
what=0x005f3194, const char * file=0x005f31cc, int line=175, void * * *
tsrm_ls=0x00323f68)  Line 82    C
        php_pdo_odbc.dll!odbc_handle_preparer(_pdo_dbh_t * dbh=0x0071e6c8,
const char * sql=0x0071e878, long sql_len=13, _pdo_stmt_t *
stmt=0x0071ebb8, _zval_struct * driver_options=0x00000000, void * * *
tsrm_ls=0x00323f68)  Line 175 + 0x20    C
        php_pdo.dll!zif_PDO_query(int ht=1, _zval_struct *
return_value=0x0071e808, _zval_struct * * return_value_ptr=0x00000000,
_zval_struct * this_ptr=0x0071e878, int return_value_used=0, void * * *
tsrm_ls=0x0000000d)  Line 992 + 0x2f    C
        php5ts.dll!zend_do_fcall_common_helper_SPEC(_zend_execute_data *
execute_data=0x0012fb38, void * * * tsrm_ls=0x00323f68)  Line 192 +
0x35    C
        php5ts.dll!ZEND_DO_FCALL_BY_NAME_SPEC_HANDLER(_zend_execute_data *
execute_data=0x0012fb38, void * * * tsrm_ls=0x00323f68)  Line 314 +
0x11    C
        php5ts.dll!execute(_zend_op_array * op_array=0x00320000, void * * *
tsrm_ls=0x0071dda0)  Line 92 + 0xc      C
        [EMAIL PROTECTED]()  + 0x130    
        [EMAIL PROTECTED]()  + 0xc      
        [EMAIL PROTECTED]()  + 0x8a     


Unhandled exception at 0x7c80a258 (kernel32.dll) in php-cgi.exe:
0xC0000005: Access violation writing location 0x0000000c.

------------------------------------------------------------------------

[2005-12-05 06:15:31] humbads at alum dot mit dot edu

Description:
------------
PHP crashes with a memory exception when running any query with invalid
syntax.  The driver is PDO-ODBC-Visual Foxpro on Windows XP SP2.  The
folder has full control permission for IUSR to the directory containing
the Foxpro DBF files.

The exception dialog shows:
php-cgi.exe - Application Error
The instruction at "0x7c80a258" reference memory at "0x0000000c". The
memory could not be "written".

Using the out-of-the box install of PHP 5.1.1 with pdo and pdo_odbc
extensions loaded via php.ini.  Latest Visual Foxpro ODBC driver was
downloaded from Microsoft website.


Reproduce code:
---------------
<?php
$db = new PDO("odbc:Driver={Microsoft Visual FoxPro
Driver};SourceType=DBF;SourceDB=C:\\temp\\;Exclusive=No");
$db->query("any query with invalid syntax");
?>

Expected result:
----------------
Should give a proper error message, no?



------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=35552&edit=1

Reply via email to