Bug 5239

Summary: Viewing a particular SVG image causes Safari+SVG to stop responding.
Product: WebKit Reporter: Tobin Richard <tjrichard>
Component: SVGAssignee: Eric Seidel (no email) <eric>
Status: RESOLVED FIXED    
Severity: Normal    
Priority: P2    
Version: 420+   
Hardware: Mac   
OS: OS X 10.4   
URL: http://upload.wikimedia.org/wikipedia/en/0/01/Eye.svg
Attachments:
Description Flags
Stop da loop
none
stop da loop II
eric: review+
More informative error reporting none

Description Tobin Richard 2005-10-02 19:58:20 PDT
Attempting to open http://upload.wikimedia.org/wikipedia/en/0/01/Eye.svg (linked
to from http://en.wikipedia.org/wiki/Image:Eye.svg) causes Safari+SVG (latest
build from 2005-09-03) to stop responding.
Comment 1 Eric Seidel (no email) 2005-10-02 23:34:46 PDT
Wow, thanks for the bug!

It looks like
SVGPathParser::parseSVG( const QString &s, bool process )

is just not robust enough.  This particular SVG has a non-ascii character right in the middle of a pata data 
attribute string, and it's causing parseSVG to just loop forever.  I'll talk this one out with the KSVG2 guys 
and see if we can't come up with a fix.
Comment 2 Rob Buis 2005-10-03 00:26:58 PDT
(In reply to comment #0) 
> Attempting to open http://upload.wikimedia.org/wikipedia/en/0/01/Eye.svg 
(linked 
> to from http://en.wikipedia.org/wiki/Image:Eye.svg) causes Safari+SVG (latest 
> build from 2005-09-03) to stop responding. 
 
Good catch! I'll attach a patch that seems to work. I am checking whether 
just skipping the invalid char is according to svg... 
Cheers, 
 
Rob. 
Comment 3 Rob Buis 2005-10-03 00:28:25 PDT
Created attachment 4169 [details]
Stop da loop
Comment 4 Rob Buis 2005-10-03 01:08:56 PDT
Created attachment 4174 [details]
stop da loop II
Comment 5 Eric Seidel (no email) 2005-10-03 01:10:53 PDT
Comment on attachment 4174 [details]
stop da loop II

Looks fine. r=me
Comment 6 Rob Buis 2005-10-03 01:24:46 PDT
Created attachment 4175 [details]
More informative error reporting
Comment 7 Eric Seidel (no email) 2005-10-03 01:52:45 PDT
Thanks for the great bug!