From: jlim at natsoft dot com Operating system: Windows XP PHP version: 4.3.2 PHP Bug Type: Unknown/Other Function Bug description: w32api registerfunction fails on 3rd call
Description: ------------ If the 3rd registerfunction (for messageboxa) is commented out, the code works properly. Tested with cli version of php. Reproduce code: --------------- <?php error_reporting(E_ALL); $api = new win32(); $api->registerfunction("long GetTickCount () From Kernel32.dll"); echo "Ticks=",$api->GetTickCount(),"\n"; $api->registerfunction("long GetUserName (string &a, int &b) From advapi32.dll"); $s1 = " "; $size = strlen($s1); $api->GetUsername($s1,$size); $s1 = substr($s1,0,$size); echo "u='$s1'\n"; print_r(get_class_methods($api)); $api->registerfunction("int MessageBoxA(long hWnd, string &title, string &lpCaption, int uType) from User32.dll"); ?> Expected result: ---------------- Ticks=192755858 u='jlim ' Array ( [0] => registerfunction [1] => unregisterfunction [2] => registercallback [3] => definetype [4] => gettypesize [5] => inittype [6] => decref [7] => gettickcount [8] => getusername ) <br /> Actual result: -------------- Ticks=192755858 u='jlim ' Array ( [0] => registerfunction [1] => unregisterfunction [2] => registercallback [3] => definetype [4] => gettypesize [5] => inittype [6] => decref [7] => gettickcount [8] => getusername ) <br /> <b>Fatal error</b>: Call to undefined function: registerfunction() in <b>d:\in etpub\wwwroot\php\w32.inc.php</b> on line <b>18</b><br /> -- Edit bug report at http://bugs.php.net/?id=24453&edit=1 -- Try a CVS snapshot: http://bugs.php.net/fix.php?id=24453&r=trysnapshot Fixed in CVS: http://bugs.php.net/fix.php?id=24453&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=24453&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=24453&r=needtrace Try newer version: http://bugs.php.net/fix.php?id=24453&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=24453&r=support Expected behavior: http://bugs.php.net/fix.php?id=24453&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=24453&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=24453&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=24453&r=globals PHP 3 support discontinued: http://bugs.php.net/fix.php?id=24453&r=php3 Daylight Savings: http://bugs.php.net/fix.php?id=24453&r=dst IIS Stability: http://bugs.php.net/fix.php?id=24453&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=24453&r=gnused