Mantis Bugtracker
  

Viewing Issue Advanced Details Jump to Notes ] View Simple ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0003355 [Quercus] block always 02-24-09 15:41 02-24-09 17:24
Reporter koreth View Status public  
Assigned To nam
Priority normal Resolution fixed Platform
Status closed   OS
Projection none   OS Version
ETA none Fixed in Version 4.0.0 Product Version 4.0.0
  Product Build
Summary 0003355: Modifications to strings persist across requests in compiled mode
Description <?php
function foo(&$str) {
  $str[0] = 'a';
}
function bar() {
  $str = 'xyz';
  print $str;
  foo($str);
}
bar();

This prints "xyz" the first time it's loaded in compiled mode, but "ayz" thereafter.
Steps To Reproduce
Additional Information
Attached Files

- Relationships

- Notes
(0003835)
koreth
02-24-09 15:54

Actually I am wrong: it prints "xyz" when it initially loads in interpreted mode, but the modified string gets compiled into the .java file:

  static final com.caucho.quercus.env.StringBuilderValue qv_ayz_2
    = new StringBuilderValue("ayz");
 
(0003836)
nam
02-24-09 17:24

php/374d
 

- Issue History
Date Modified Username Field Change
02-24-09 15:41 koreth New Issue
02-24-09 15:54 koreth Note Added: 0003835
02-24-09 16:26 nam Status new => assigned
02-24-09 16:26 nam Assigned To  => nam
02-24-09 17:24 nam Status assigned => closed
02-24-09 17:24 nam Note Added: 0003836
02-24-09 17:24 nam Resolution open => fixed
02-24-09 17:24 nam Fixed in Version  => 4.0.0


Mantis 1.0.0rc3[^]
Copyright © 2000 - 2005 Mantis Group
31 total queries executed.
27 unique queries executed.
Powered by Mantis Bugtracker