Bug 35771

Summary: [chromium] WebDocument:applicationID() crashes on <meta> tag with no http-equiv attribute
Product: WebKit Reporter: John Gregg <johnnyg>
Component: WebKit APIAssignee: John Gregg <johnnyg>
Status: RESOLVED FIXED    
Severity: Normal CC: aa, commit-queue, fishd, webkit.review.bot
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: PC   
OS: OS X 10.5   
Attachments:
Description Flags
patch
none
fix style warning
fishd: review-
removing {}s none

Description John Gregg 2010-03-04 15:27:58 PST
if all the other checks fail, and there is a meta tag with no http-equiv attribute, the code calls .lower() on null.

see also http://code.google.com/p/chromium/issues/detail?id=34961 for repro steps using chrome.
Comment 1 John Gregg 2010-03-04 15:58:26 PST
Created attachment 50061 [details]
patch
Comment 2 WebKit Review Bot 2010-03-04 16:04:20 PST
Attachment 50061 [details] did not pass style-queue:

Failed to run "WebKitTools/Scripts/check-webkit-style" exit_code: 1
WebKit/chromium/src/WebDocument.cpp:152:  Boolean expressions that span multiple lines should have their operators on the left side of the line instead of the right side.  [whitespace/operators] [4]
Total errors found: 1 in 2 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 3 John Gregg 2010-03-04 16:25:14 PST
Created attachment 50062 [details]
fix style warning
Comment 4 Darin Fisher (:fishd, Google) 2010-03-04 16:38:14 PST
Comment on attachment 50062 [details]
fix style warning

Can we please just remove WebDocument::applicationID.  As I mentioned to Aaron,
it doesn't belong here and can be implemented purely in terms of WebKit APIs.
Comment 5 Darin Fisher (:fishd, Google) 2010-03-04 16:39:22 PST
Comment on attachment 50062 [details]
fix style warning

> Index: WebKit/chromium/src/WebDocument.cpp
> +        if (element->hasAttribute("http-equiv")
> +            && element->getAttribute("http-equiv").lower() == kChromeApplicationHeader) {
>              return element->getAttribute("value");
>          }

nit: there should be no brackets around single line statements
Comment 6 Aaron Boodman 2010-03-04 16:42:14 PST
Darin, I knew you'd say that.

I am going to start pulling it out soon. Can johnnyg just fix this immediate
issue in the meantime?
Comment 7 John Gregg 2010-03-04 16:47:07 PST
Because notifications are hooked up to applicationID() already, this is causing real crashes when people use notifications... so i'd rather not wait for a large refactor to fix that.
Comment 8 John Gregg 2010-03-04 16:48:31 PST
Created attachment 50065 [details]
removing {}s

well I didn't put the braces there but I can remove them...
Comment 9 Darin Fisher (:fishd, Google) 2010-03-04 20:09:38 PST
Sorry to give you a hard time about the applicationID thing.  I would have r+'d the patch before if it didn't have the style issue.
Comment 10 WebKit Commit Bot 2010-03-04 21:52:20 PST
Comment on attachment 50065 [details]
removing {}s

Clearing flags on attachment: 50065

Committed r55571: <http://trac.webkit.org/changeset/55571>
Comment 11 WebKit Commit Bot 2010-03-04 21:52:25 PST
All reviewed patches have been landed.  Closing bug.