[prev in list] [next in list] [prev in thread] [next in thread] 

List:       php-internals
Subject:    [PHP-DEV] Bug #10828 Updated: sometimes get_extension_funcs() kills PHP
From:       jo () feuersee ! de
Date:       2001-06-24 20:46:36
[Download RAW message or body]

ID: 10828
User Update by: jo@feuersee.de
Old-Status: Feedback
Status: Open
Bug Type: PHP options/info functions
Operating system: Linux 2.4.5
PHP Version: 4.0.6
Description: sometimes get_extension_funcs() kills PHP

Ok, I spend a sunday with wounderful weather about this 
and finally isolated the bug:
get_loaded_extensions() returns an extension called 
"Session MM" when available.
Feeding this string to get_extension_funcs() kills the 
process. So the simpliest way to reprodruce the bug is:
<?php
	$foo = get_extension_funcs("Session MM");
?>
Most probably this works only when the extension is 
available, that would explain why some people had no 
problem running the example.
HTH, Jo


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

[2001-06-24 11:32:20] sniper@php.net
Does it crash? Provide a GDB backtrace then.
(reconfigure/compile PHP first with --enable-debug)

Remember to delete config.cache before configure.
And do 'make clean' after.

--Jani


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

[2001-06-24 10:25:36] jo@feuersee.de
Sorry, but he same in PHP4.0.6


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

[2001-06-10 21:25:40] jmoore@php.net
No feedback. Closing.

- James

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

[2001-05-14 08:37:45] sniper@php.net
Your script works for me just fine with PHP 4.0.6-dev.
Please try latest snapshot from http://snaps.php.net/

--Jani




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

[2001-05-12 08:32:35] jo@feuersee.de
I tried to print out all available PHP functions using 
get_loaded_extensions() and get_extension_funcs():
<?php
print("<h3>PHP" . phpversion() . "</h3>n");
print("<ol>n");
$ext = get_loaded_extensions();
sort($ext);
for($i = 0; $i < count($ext); $i++) {
	$name = $ext[$i];
	print("<li><b>$name</b>:</li>n<ol>n");
	$func = get_extension_funcs($name);
	sort($func);
	for($j = 0; $j < count($func); $j++) {
		
print("<li><code>$func[$j]()</code></li>n");
	}
	print("</ol>n");
}
print("</ol>n");
?>
and this worked well with PHP4.0.3pl1.
However, since PHP4.0.4pl1/5, the Apache (1.3.19) 
subprocess dies:
[Sat May 12 14:26:49 2001] [notice] child pid 746 exit 
signal Segmentation fault (11)
When commenting out the get_extension_funcs() call, all is 
well. Even replacing the argument to a const (eg. 
get_extension_funcs("exif") ) works.
I tried to reproduce the error in a more simple way, but 
failed:
<?php
$name = "exif";
print_r(get_extension_funcs($name));
?>
works as expected. Still the script above fails.


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

The remainder of the comments for this report are too long.  To view the rest of the \
comments, please view the bug report online.

Full Bug description available at: http://bugs.php.net/?id=10828


-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: php-dev-unsubscribe@lists.php.net
For additional commands, e-mail: php-dev-help@lists.php.net
To contact the list administrators, e-mail: php-list-admin@lists.php.net


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic