Bug #69020 [Opn->Csd]: Possible memory corruption on file error messages

From: Date: Tue, 17 Feb 2015 17:57:37 +0000
Subject: Bug #69020 [Opn->Csd]: Possible memory corruption on file error messages
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-190755@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=69020&edit=1

 ID:                 69020
 Updated by:         ab@php.net
 Reported by:        php at maisqi dot com
 Summary:            Possible memory corruption on file error messages
-Status:             Open
+Status:             Closed
 Type:               Bug
 Package:            Filesystem function related
 Operating System:   Windows 8.1
 PHP Version:        5.6.5
-Assigned To:        
+Assigned To:        ab
 Block user comment: N
 Private report:     N

 New Comment:

Thanks for the update. Marking as fixed now, expect an update in one of the next releases.


Previous Comments:
------------------------------------------------------------------------
[2015-02-12 21:25:12] php at maisqi dot com

Just tested with the latest snapshot and it seems fixed. Thanks for your help, ab@php.net.

------------------------------------------------------------------------
[2015-02-11 17:37:45] ab@php.net

No, you don't have to build yourself, just fetch some latest from here http://windows.php.net/downloads/snaps/php-5.6/
(also there's a snapshot page on windows.php.net).

If you've found that's not fixed in the latest, please check this page for the backtrace
howto https://bugs.php.net/bugs-generating-backtrace-win32.php
.

Thanks.

------------------------------------------------------------------------
[2015-02-11 16:19:47] php at maisqi dot com

I'm sorry, but I'll need some help doing that. Any pointers will be greatly appreciated.
Regarding the snapshots, I'll have to compile it myself, right? I'm using the Windows
version...

------------------------------------------------------------------------
[2015-02-11 14:30:17] ab@php.net

Please post a backtrace. Though, it sounds very similar to what was recently fixed in bug #68996.
Maybe you also could check some latest snapshot.

Thanks.

------------------------------------------------------------------------
[2015-02-09 22:26:15] php at maisqi dot com

Description:
------------
If I try to handle a file whose name is ISO-8859-1 (on a NTFS file system), and force some error,
the error message is printed with some unexpected chars, besides those that are to be expected when
we cross different character encodings.

I tested this on PHP5.5 and it worked ok. PHP 5.6, 32 bits or 64 bits, print the strange chars and
crashed a few times. I can't test this on Linux for now.

Test script:
---------------
file_get_contents (utf8_decode ('Z:/Voláção'));
echo '<br />';
trigger_error(utf8_decode ('Z:/Voláção'), E_USER_WARNING);
trigger_error(utf8_decode ('Z:/Voláção'), E_USER_WARNING);

/**
 * Note: I repeated the trigger_error() solely to prove that the output
 * is not random.
 */

Expected result:
----------------
The script should emit three very similar error messages.

Actual result:
--------------
This is what I get on my system:

  Warning: <`d��� : failed to open stream: No such file or directory [...]
  Warning: Z:/Vol���o in D:\Apache\exp\web\exp.php on line 22
  Warning: Z:/Vol���o in D:\Apache\exp\web\exp.php on line 23


The «garbage» chars are quite different in the first message. I suspect this is due to some
memory corruption bug. In fact, this simple script crashes once in a while (at least on my system).


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



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


Thread (6 messages)

« previous php.bugs (#190755) next »