[Webkit-unassigned] [Bug 99729] New: Web Inspector: Invalid Regex in SASSSourceMapping/didRequestContent, breaks Support for Sass experiment

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu Oct 18 09:45:00 PDT 2012


https://bugs.webkit.org/show_bug.cgi?id=99729

           Summary: Web Inspector: Invalid Regex in
                    SASSSourceMapping/didRequestContent, breaks Support
                    for Sass experiment
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: All
        OS/Version: All
            Status: UNCONFIRMED
          Severity: Normal
          Priority: P2
         Component: Web Inspector
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: damirz at gmail.com
                CC: keishi at webkit.org, pmuellr at yahoo.com,
                    pfeldman at chromium.org, yurys at chromium.org,
                    apavlov at chromium.org, loislo at chromium.org,
                    vsevik at chromium.org,
                    web-inspector-bugs at googlegroups.com


To reproduce the issue:

1. Create a Sass file with last rule on line 180 or further
1. Compile Sass with debug-info
3. Load a document that references compiled CSS — the feature will be broken. Even Sass files with less than 180 and more than100 lines will display wrong line numbers be wrong.

It seems that the regex on the following line replaces too much:
var line = parseInt(decodeURI(match[2].replace(/(..)/g, "%$1")), 10);

see http://trac.webkit.org/browser/trunk/Source/WebCore/inspector/front-end/SASSSourceMapping.js?rev=129862#L86

The regex replaces value like "3170" with "%31%70" which decodes to "1p" whereas "170" was intended. Decoding value like "%31%83" throws URIError.

A simple fix seems to be to replace "/(..)/g" with "/(.)/".

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.


More information about the webkit-unassigned mailing list