Bug 49634

Summary: Make overflow guards in WTF::String::utf8 explicit
Product: WebKit Reporter: David Kilzer (:ddkilzer) <ddkilzer>
Component: Web Template FrameworkAssignee: David Kilzer (:ddkilzer) <ddkilzer>
Status: RESOLVED FIXED    
Severity: Normal CC: barraclough, oliver
Priority: P2 Keywords: InRadar
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
Attachments:
Description Flags
Patch darin: review+

Description David Kilzer (:ddkilzer) 2010-11-16 17:27:45 PST
Make overflow guards in WTF::String::utf8 explicit
Comment 1 David Kilzer (:ddkilzer) 2010-11-16 17:30:49 PST
Created attachment 74071 [details]
Patch
Comment 2 David Kilzer (:ddkilzer) 2010-11-16 17:31:29 PST
<rdar://problem/8675768>
Comment 3 Darin Adler 2010-11-16 18:01:28 PST
Comment on attachment 74071 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=74071&action=review

> JavaScriptCore/wtf/text/WTFString.cpp:700
> +    if (length > numeric_limits<unsigned>::max() / 3)

If we changed the type of the local variable length to size_t instead of unsigned, then this could just check against size_t instead of unsigned, giving us a higher limit on 64-bit platforms.
Comment 4 David Kilzer (:ddkilzer) 2010-11-16 18:08:04 PST
(In reply to comment #3)
> (From update of attachment 74071 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=74071&action=review
> 
> > JavaScriptCore/wtf/text/WTFString.cpp:700
> > +    if (length > numeric_limits<unsigned>::max() / 3)
> 
> If we changed the type of the local variable length to size_t instead of unsigned, then this could just check against size_t instead of unsigned, giving us a higher limit on 64-bit platforms.

Thanks.  I filed Bug 49637.
Comment 5 David Kilzer (:ddkilzer) 2010-11-17 08:39:20 PST
Committed r72209: <http://trac.webkit.org/changeset/72209>