ID:               13961
 User updated by:  lampa at fee dot vutbr dot cz
-Summary:          some characters in incomonig variable names are
                   silently changed
 Reported By:      lampa at fee dot vutbr dot cz
-Status:           No Feedback
+Status:           Open
 Bug Type:         Apache related
-Operating System: FreeBSD
+Operating System: any
-PHP Version:      4.0.6, 4.1.0
+PHP Version:      4.0.6,4.1.0,4.2.*,4.3.4
 Assigned To:      derick
 New Comment:

Still not fixed in 4.3.4


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

[2003-11-13 19:45:03] daniele at orlandi dot com

Is there a way to make this bug a little more alive?

I provided the missing feedback... I don't want to file a duplicate,
I'd just like to see it as an open bug (if it is the case).

Sorry for the meta-comment

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

[2003-11-11 18:15:11] daniele at orlandi dot com

This bug is still present in php 4.3.4 and may be harmful since all the
BrowserMatch functionality to workaround browser bugs in Apache is
essentially disabled.

As a proof of concept i patched sapi/apache2handler/sapi_apache2.c
(apache2filter is probably affected too) and the problem went away.

Note that the patch may not be perfect as I don't know how Apache and
PHP work internally very well.

--- php-4.3.4/sapi/apache2handler/sapi_apache2.c        2003-10-02
05:24:43.000000000 +0200
+++ php-4.3.4-patched/sapi/apache2handler/sapi_apache2.c       
2003-11-11 23:52:06.000000000 +0100
@@ -227,9 +227,14 @@
        char *key, *val;
        zval **path_translated_zv;
  
+       char *t;
+
        APR_ARRAY_FOREACH_OPEN(arr, key, val)
                if (!val) val = empty_string;
-               php_register_variable(key, val, track_vars_array
TSRMLS_CC);
+
+               t = estrndup(key, strlen(key));
+               php_register_variable(t, val, track_vars_array
TSRMLS_CC);
+               efree(t);
        APR_ARRAY_FOREACH_CLOSE()

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

[2002-10-15 01:00:02] php-bugs at lists dot php dot net

No feedback was provided for this bug for over 2 weeks, so it is
being suspended automatically. If you are able to provide the
information that was originally requested, please do so and change
the status of the bug back to "Open".

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

[2002-09-29 20:41:13] [EMAIL PROTECTED]

Please try using this CVS snapshot:

  http://snaps.php.net/php4-latest.tar.gz
 
For Windows:
 
  http://snaps.php.net/win32/php4-win32-latest.zip

This should be fixed in CVS (If I remember correctly) so could you
please try the snapshot and verify it for us?


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

[2001-12-11 09:57:36] lampa at fee dot vutbr dot cz

Not fixed in 4.1.0. Why? To be clear, one call is neccessary:

for (i = 0; i < arr->nelts; i++) {
                char *val,*key;

                if (elts[i].val) {
                        val = elts[i].val;
                } else {
                        val = empty_string;
                }
                key = estrdup(elts[i].key); /* HERE */
                php_register_variable(key, val, track_vars_array 
ELS_CC PLS_CC)
;
        }


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

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/13961

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

Reply via email to