php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #22386 Using browscap causes segfault
Submitted: 2003-02-23 10:22 UTC Modified: 2003-03-14 19:19 UTC
From: philip@php.net Assigned:
Status: Closed Package: Scripting Engine problem
PHP Version: 5CVS-2003-02-23 (dev) OS: linux
Private report: No CVE-ID: None
 [2003-02-23 10:22 UTC] philip@php.net
After compiling a fresh PHP5, a simple call to 'php -v' provides a segfault.  Note that commenting out the browscap in php.ini or running php like 'php -n -v' causes the segfault to go away.  Thanks to Wez for the diagnosis and here's the backtrace:

#0  0x0815d325 in zend_objects_store_put (object=0x401a803c, dtor=0x815b400 <zend_objects_destroy_object>, clone=0) at /cvs/php5/Zend/zend_objects_API.c:68
#1  0x0815b4ac in zend_objects_new (object=0xbfffe870, class_type=0x81b4978) at /cvs/php5/Zend/zend_objects.c:79
#2  0x0814e14b in _object_and_properties_init (arg=0x81ca6c8, class_type=0x81b4978, properties=0x81ca6f8, __zend_filename=0x8173160 "/cvs/php5/ext/standard/browscap.c", __zend_lineno=133) at /cvs/php5/Zend/zend_API.c:664
#3  0x0808f868 in php_browscap_parser_cb (arg1=0xbfffe950, arg2=0x0, callback_type=2, arg=0x81ae8e0) at /cvs/php5/ext/standard/browscap.c:133
#4  0x0813661a in ini_parse () at /cvs/php5/Zend/zend_ini_parser.y:205
#5  0x0813605e in zend_parse_ini_file (fh=0xbffff7b4, unbuffered_errors=1 '\001', ini_parser_cb=0x808f6b8 <php_browscap_parser_cb>, arg=0x81ae8e0) at /cvs/php5/Zend/zend_ini_parser.y:156
#6  0x0808f9c2 in zm_startup_browscap (type=1, module_number=3) at /cvs/php5/ext/standard/browscap.c:169
#7  0x08088b48 in zm_startup_basic (type=1, module_number=3) at /cvs/php5/ext/standard/basic_functions.c:1067
#8  0x0814f733 in zend_startup_module (module=0x81a5cc0) at /cvs/php5/Zend/zend_API.c:1127
#9  0x081154c6 in php_startup_extensions (ptr=0x81ae314, count=8) at /cvs/php5/main/main.c:1147
#10 0x0816be65 in php_startup_internal_extensions () at main/internal_functions_cli.c:64
#11 0x0811593a in php_module_startup (sf=0x81ae280, additional_modules=0x0, num_additional_modules=0) at /cvs/php5/main/main.c:1311
#12 0x0816aaee in main (argc=2, argv=0xbffffab4) at /cvs/php5/sapi/cli/php_cli.c:563

Patches

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2003-03-14 14:00 UTC] jay@php.net
This should be fixed in CVS. In addition to the fix, an  
optional bool parameter has been added that changes the  
return type to an array.  
  
The format of browser_name_pattern has changed slightly,  
but I doubt that will be much of a problem. The  
get_browser() function seems a bit more accurate now, as  
after doing some tests on 240+ browser IDs, it's returning  
platform with more accuracy ("linux", "freebsd", etc. now  
for Konqueror instead of "unix") and also finding Mozilla  
on Mac, which 4.3.x seem to miss.  
  
J 
 [2003-03-14 19:19 UTC] sniper@php.net
Fixed -> closed.

 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Thu Aug 15 20:01:27 2024 UTC