Mantis Bugtracker
  

Viewing Issue Advanced Details Jump to Notes ] View Simple ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0001875 [Quercus] minor always 07-13-07 05:27 07-19-07 16:29
Reporter feherg View Status public  
Assigned To nam
Priority normal Resolution fixed Platform
Status closed   OS
Projection none   OS Version
ETA none Fixed in Version 3.1.3 Product Version 3.1.2
  Product Build
Summary 0001875: making geshi run: preg_quote and string comparison problems (svn snapshot 2834)
Description Geshi is a program source code syntax higlighter written in php, it inputs the source code and outputs it colored in html.
It supports a lot of programming languages and several cms systmes are using it.
http://qbnz.com/highlighter/ [^]

I'm trying to run geshi 1.0.7.20 under the latest quercus snapshot, but in many cases it produces incorrect html code. (The same was for quercus 3.1.1) I found and fixed two bugs in quercus which seems to solve these problems.
But they might mess other things :)


bug 0000001: string comparision
This problem (bug 1850) is still exists in the svn head. The exact problem is that
the expression "0" == "" evaluates to true, but "" == "0" evaluates to false. Both should evaluate to false.
my fix 0000001:
I think that quercus souldn't do conversions when comparing two variables of the same type.
I only fixed this in UnicodeValue.java, but I think others should also be fixed, like StringValue.java, ...
So the exact fix: replace the beginning of the method eq in UnicodeValue.java with this:
public boolean eq(Value rValue)
  {
    rValue = rValue.toValue();

    if (rValue.isUnicode()) {
        return equals(isUnicode());
    }



bug 0000002: preg_quote
The function preg_quote should quote the . (dot) character but it doesn't do it.
my fix 0000002:
Insert at the and of RegexpModule.java the following line:
PREG_QUOTE['.'] = true;
And perhaps more characters?

Bye
Gabor
Steps To Reproduce
Additional Information
Attached Files

- Relationships

- Notes
(0002113)
feherg
07-13-07 05:33

The comparison fix, correctly:
  public boolean eq(Value rValue)
  {
    
    rValue = rValue.toValue();

    if (rValue.isUnicode()) {
        return equals(rValue);
    }
 
(0002119)
nam
07-19-07 16:29

php/036[n-z]
php/150k
 

- Issue History
Date Modified Username Field Change
07-13-07 05:27 feherg New Issue
07-13-07 05:28 feherg Issue Monitored: feherg
07-13-07 05:33 feherg Note Added: 0002113
07-13-07 18:54 nam Status new => assigned
07-13-07 18:54 nam Assigned To  => nam
07-19-07 16:29 nam Status assigned => closed
07-19-07 16:29 nam Note Added: 0002119
07-19-07 16:29 nam Resolution open => fixed
07-19-07 16:29 nam Fixed in Version  => 3.1.3


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