|  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #33051 display glitch for shmop test with firefox (weird returned ascii)
Submitted: 2005-05-18 04:37 UTC Modified: 2005-05-19 14:20 UTC
From: Trigunflame at gmail dot com Assigned:
Status: Not a bug Package: Semaphore related
PHP Version: 5.0.4 OS: windows xp
Private report: No CVE-ID: None
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes.
If this is not your bug, you can add a comment by following this link.
If this is your bug, but you forgot your password, you can retrieve your password here.
Bug Type:
From: Trigunflame at gmail dot com
New email:
PHP Version: OS:


 [2005-05-18 04:37 UTC] Trigunflame at gmail dot com
Using the code posted here:

Generates a weird display glitch in firefox with [] brackets, and causes linebreak.

Reproduce code:
// Create 100 byte shared memory block with system id if 0xff3
$shm_id = shmop_open(0xff3, "c", 0644, 100);
if (!$shm_id) {
   echo "Couldn't create shared memory segment\n";

// Get shared memory block's size
$shm_size = shmop_size($shm_id);
echo "SHM Block Size: " . $shm_size . " has been created.\n";

// Lets write a test string into shared memory
$shm_bytes_written = shmop_write($shm_id, "my shared memory block", 0);
if ($shm_bytes_written != strlen("my shared memory block")) {
   echo "Couldn't write the entire length of data\n";

// Now lets read the string back
$my_string = shmop_read($shm_id, 0, $shm_size);
if (!$my_string) {
   echo "Couldn't read from shared memory block\n";
echo "The data inside shared memory was: " . $my_string . "\n";

//Now lets delete the block and close the shared memory segment
if (!shmop_delete($shm_id)) {
   echo "Couldn't mark shared memory block for deletion.";

Expected result:
SHM Block Size: 100 has been created. The data inside shared memory was: my shared memory block

Actual result:
SHM Block Size: 100 has been created. The data inside shared memory was: my shared memory 


Add a Patch

Pull Requests

Add a Pull Request


AllCommentsChangesGit/SVN commitsRelated reports
 [2005-05-18 04:38 UTC] Trigunflame at gmail dot com
Should say [] are visible when viewing source.. which are appended after the expected result string, yet cause a linebreak..
 [2005-05-18 11:25 UTC]
And what happens in another browser ?
 [2005-05-19 01:05 UTC] Trigunflame at gmail dot com
Well in firefox, like I said earlier in the source view you can see these [] brackets, and causes a linebreak on the last word in normal view.

In IE, the problem doesn't occur.. no linebreaks, no weird [] brackets.

So I don't really know if you would classify this as a Firefox problem or a PHP Problem, but technically; I don't believe it should be returning any additional data than what was originally written in the first place.
 [2005-05-19 01:13 UTC]
If the problem appears in a browser, but it doesn't in another one, then most likely it's not a PHP problem, right?

What is the *real* output you get?
I.e. the output you get when you execute this script using php.exe in console.
 [2005-05-19 01:19 UTC] Trigunflame at gmail dot com
Well according to PHP Doc, SHMOP shouldnt work in CLI on windows, yet it does.

The output appears normal.. as it does in IE.

So, I really don't know what to say... PHP Handles the return data from this function and passes through Apache etc.. which is then delivered to FireFox. 

Question is.. how would FireFox correct an issue like this? Strip certain ASCII from output or something?
 [2005-05-19 14:20 UTC]
There are NULL bytes at the end of data output (because you read more than write - you've written $shm_bytes_written bytes and you're trying to read $shm_size bytes).
Obviously FireFox doesn't like those null bytes and breaks the output for some reason.
No PHP bug here.
PHP Copyright © 2001-2022 The PHP Group
All rights reserved.
Last updated: Mon Sep 26 09:05:56 2022 UTC