@@ -362,7 +362,7 @@ static void php_load_zend_extension_cb(void *arg)
362
362
if (IS_ABSOLUTE_PATH (filename , length )) {
363
363
zend_load_extension (filename );
364
364
} else {
365
- char * libpath , * orig_libpath ;
365
+ char * libpath ;
366
366
char * extension_dir = INI_STR ("extension_dir" );
367
367
int extension_dir_len = (int )strlen (extension_dir );
368
368
int slash_suffix = IS_SLASH (extension_dir [extension_dir_len - 1 ]);
@@ -372,30 +372,29 @@ static void php_load_zend_extension_cb(void *arg)
372
372
} else {
373
373
spprintf (& libpath , 0 , "%s%c%s" , extension_dir , DEFAULT_SLASH , filename ); /* SAFE */
374
374
}
375
+
375
376
if (VCWD_ACCESS (libpath , F_OK )) {
376
377
/* If file does not exist, consider as extension name and build file name */
377
- orig_libpath = libpath ;
378
+ const char * libpath_prefix = "" ;
379
+ char * orig_libpath = libpath ;
378
380
#if PHP_WIN32
381
+ libpath_prefix = "php_" ;
382
+ #endif
383
+
379
384
if (slash_suffix ) {
380
- spprintf (& libpath , 0 , "%sphp_%s." PHP_SHLIB_SUFFIX , extension_dir , filename ); /* SAFE */
381
- } else {
382
- spprintf (& libpath , 0 , "%s%cphp_%s." PHP_SHLIB_SUFFIX , extension_dir , DEFAULT_SLASH , filename ); /* SAFE */
383
- }
384
- #else
385
- if (slash_suffix ) {
386
- spprintf (& libpath , 0 , "%s%s." PHP_SHLIB_SUFFIX , extension_dir , filename ); /* SAFE */
385
+ spprintf (& libpath , 0 , "%s%s%s." PHP_SHLIB_SUFFIX , extension_dir , libpath_prefix , filename ); /* SAFE */
387
386
} else {
388
- spprintf (& libpath , 0 , "%s%c%s." PHP_SHLIB_SUFFIX , extension_dir , DEFAULT_SLASH , filename ); /* SAFE */
387
+ spprintf (& libpath , 0 , "%s%c%s%s ." PHP_SHLIB_SUFFIX , extension_dir , DEFAULT_SLASH , libpath_prefix , filename ); /* SAFE */
389
388
}
390
- #endif
389
+
391
390
if (VCWD_ACCESS (libpath , F_OK )) {
392
- fprintf (stderr , "Cannot access Zend extension %s (Tried: %s, %s)\n" , filename , orig_libpath , libpath );
393
- /* See http://support.microsoft.com/kb/190351 */
394
- fflush (stderr );
391
+ php_error (E_CORE_WARNING , "Cannot access Zend extension %s (Tried: %s, %s)\n" ,
392
+ filename , orig_libpath , libpath );
395
393
efree (orig_libpath );
396
394
efree (libpath );
397
395
return ;
398
396
}
397
+
399
398
efree (orig_libpath );
400
399
}
401
400
0 commit comments