ID:               42749
 User updated by:  gabe at mudbugmedia dot com
 Reported By:      gabe at mudbugmedia dot com
-Status:           Feedback
+Status:           Open
 Bug Type:         *General Issues
 Operating System: Linux proto 2.6.20-hardened-r5
 PHP Version:      5CVS-2007-09-24 (snap)
 New Comment:

I have some vhosts that have the following within the <VirtualHost> 
block:
php_admin_value error_reporting "E_ALL ^ E_NOTICE"

However, this problem is occurring on a vhost that does not use any 
php_admin_values, either globally or in the <VirtualHost> block.

I have not had troubles overriding any of the other .ini values that I

know of.  I have a few sites that have the following .htaccess:
php_flag short_open_tag on
php_flag register_globals on
php_value error_reporting "E_ALL ^ E_NOTICE"

During page loads when the error_reporting doesn't get properly 
overwritten with the new value, the short_open_tag and 
register_globals are always properly set and are not suffering the 
same problem. A good portion of my sites also change the include_path 
via ini_set(), and I haven't had a single issue with any of those.  It

appears that this is specific to the error_reporting ini value and 
isn't affecting any of the other ini values.

It should be noted that sites that use a php_admin_value 
error_reporting in a <VirtualHost> block have been reported (yet?) to 
have any issues with setting a new local value.


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

[2007-09-25 09:20:53] [EMAIL PROTECTED]

Is it just error_reporting ini option you get this problem with?
It is a bit hard to debug, the ini system being what it is..

Do you use php_admin_* flags anywhere in your httpd.conf (or included
parts of it) ??

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

[2007-09-24 21:02:55] gabe at mudbugmedia dot com

In the comments of the other bug, this is mentioned:

>When error_reporting was overwritten with ADMIN privileges it cannot
be 
changed anymore by the @ operator :)

If I add something like:
@include 'doesnotexist';

at the end of the test file, no warning will be issued even when the 
problem behavior is occurring.  Usage of the '@' symbol for error 
suppression is completely unaffected by this bug.

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

[2007-09-24 20:56:17] gabe at mudbugmedia dot com

I extended my reproduction code to check ini_set(), which suffers the 
same behavior.

Code:
<?php
var_dump(error_reporting());

var_dump(error_reporting(E_ALL ^ E_NOTICE ^ E_USER_NOTICE));
trigger_error('This should not be seen', E_USER_NOTICE);
echo $a; // should cause a notice
var_dump(error_reporting());

var_dump(ini_set('error_reporting', E_ALL ^ E_NOTICE ^ E_USER_NOTICE ^

E_USER_WARNING));
var_dump(error_reporting());
trigger_error('This should not be seen', E_USER_NOTICE);
echo $a; // should cause a notice
var_dump(error_reporting());
?>


Output:
int(6143) int(6143)
Notice: This should not be seen in 
/home/gabebug/public_html/error_reporting_tests.php on line 5

Notice: Undefined variable: a in 
/home/gabebug/public_html/error_reporting_tests.php on line 6
int(6143) bool(false) int(6143)
Notice: This should not be seen in 
/home/gabebug/public_html/error_reporting_tests.php on line 11

Notice: Undefined variable: a in 
/home/gabebug/public_html/error_reporting_tests.php on line 12
int(6143)

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

[2007-09-24 20:54:00] gabe at mudbugmedia dot com

I don't think this is a threading problem, as I'm running Apache 2.2.6

under `prefork` mpm, and when I compiled (via gentoo USE flags -- not 
sure what the 'thread' use flag corresponds to in the ./configure), 
threads were disabled.  Also, the last comment on #41561 states that 
threads weren't involved and that it was patched in the CVS last week,

and I've been experiencing this behavior on today's CVS snap.

This is my configure statement:

'./configure' '--prefix=/usr/lib/php5' '--host=i686-pc-linux-gnu' '--
mandir=/usr/lib/php5/man' '--infodir=/usr/lib/php5/info' '--
sysconfdir=/etc' '--cache-file=./config.cache' '--disable-cli' '--
with-apxs2=/usr/sbin/apxs2' '--with-config-file-path=/etc/php/apache2-
php5' '--with-config-file-scan-dir=/etc/php/apache2-php5/ext-active' 
'--without-pear' '--disable-bcmath' '--with-bz2' '--disable-calendar' 
'--with-curl' '--without-curlwrappers' '--disable-dbase' '--disable-
exif' '--without-fbsql' '--without-fdftk' '--disable-filter' '--
disable-ftp' '--with-gettext' '--without-gmp' '--disable-hash' '--
without-iconv' '--disable-ipv6' '--disable-json' '--without-kerberos' 
'--enable-mbstring' '--with-mcrypt' '--without-mhash' '--without-msql'

'--without-mssql' '--without-ncurses' '--with-openssl' '--with-
openssl-dir=/usr' '--disable-pcntl' '--disable-pdo' '--without-pgsql' 
'--without-pspell' '--without-recode' '--disable-reflection' '--
disable-simplexml' '--disable-shmop' '--without-snmp' '--disable-soap'

'--disable-sockets' '--disable-spl' '--without-sybase' '--without-
sybase-ct' '--disable-sysvmsg' '--disable-sysvsem' '--disable-sysvshm'

'--without-tidy' '--disable-tokenizer' '--disable-wddx' '--disable-
xmlreader' '--disable-xmlwriter' '--without-xmlrpc' '--without-xsl' '-
-disable-zip' '--with-zlib' '--disable-debug' '--without-cdb' '--
without-db4' '--without-flatfile' '--without-gdbm' '--without-inifile'

'--without-qdbm' '--without-freetype-dir' '--without-t1lib' '--
disable-gd-jis-conv' '--with-jpeg-dir=/usr' '--with-png-dir=/usr' '--
without-xpm-dir' '--with-gd' '--with-mysql=/usr' '--with-mysql-
sock=/var/run/mysqld/mysqld.sock' '--without-mysqli' '--with-readline'

'--without-libedit' '--without-mm' '--without-sqlite' '--with-pic'

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

[2007-09-24 20:18:06] hoffie at gentoo dot org

Might be related to bug 41561 (and related commits) when building with
threads (I guess this is the case here).

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

The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
    http://bugs.php.net/42749

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

Reply via email to