[ jedit-Bugs-1594520 ] curly bracket in Perl substit'n pattern causes jEdit lockup

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[ jedit-Bugs-1594520 ] curly bracket in Perl substit'n pattern causes jEdit lockup

SourceForge.net
Bugs item #1594520, was opened at 2006-11-11 02:22
Message generated for change (Comment added) made by hertzhaft
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=100588&aid=1594520&group_id=588

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: None
Group: None
>Status: Pending
>Resolution: Fixed
Priority: 5
Private: No
Submitted By: Philip Steiner (phipster)
Assigned to: Martin Raspe (hertzhaft)
Summary: curly bracket in Perl substit'n pattern causes jEdit lockup

Initial Comment:
This is possibly a SideKick parsing error in Perl mode:

Inserting the opening curly bracket "{" delimiter in a
substitution pattern causes CPU to go to 100%, e.g. I
first delete the "/" in this line:

( my $invalid = $page ) =~ s/Foo\s+(.+?)\n//$1/ims;
----------------------------^

when I press the "{" key, jEdit just locks up & the CPU
spikes to 100%.

Interestingly, if I first replace the 3 following "/"
delimiters with curly-bracket delimiters, I am then
able to replace the initial "/" delimiter with a "{":

( my $invalid = $page ) =~ s{Foo\s+(.+?)\n}{$1}ims;
this inserts ok ------------^


My environment:

Windows 2000 SP4

java version "1.5.0_06"
Java(TM) 2 Runtime Environment, Standard Edition (build
1.5.0_06-b05)
Java HotSpot(TM) Client VM (build 1.5.0_06-b05, mixed
mode, sharing)

jEdit
.version 4.3pre8
.build 04.03.08.00
.stablebuild 04.02.99.00

SideKick 0.6.7


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

>Comment By: Martin Raspe (hertzhaft)
Date: 2006-11-13 17:41

Message:
Logged In: YES
user_id=1037294

OK, I simplified the regexes to highlight regexes in
modes/perl.xml.
Please try revision 8024.
 


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

Comment By: Martin Raspe (hertzhaft)
Date: 2006-11-13 13:14

Message:
Logged In: YES
user_id=1037294

The line causes a short peak in CPU load here, but no
lockup. Anyway, I see that the regex in the modefile for
highlighting the regex in the code seems much too
complicated. I'll fix this.

BTW, there's on slash too many in your regex. This shouldn't
cause a lockup, though.

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

Comment By: Martin Raspe (hertzhaft)
Date: 2006-11-13 12:54

Message:
Logged In: YES
user_id=1037294

Have you turned on the "parse on keystroke" option in
Sidekick? If not, this sounds more like a loop in the syntax
highlighting code, caused by the perl mode file. Syntax
highlighting for regexes frequently caused infinite loops in
the past. I thought I had fixed that, but apparently not
completely. I'll have a look at your examples.


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

You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=100588&aid=1594520&group_id=588

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
--
-----------------------------------------------
jEdit Developers' List
[hidden email]
https://lists.sourceforge.net/lists/listinfo/jedit-devel