Closed
Bug 473911
Opened 16 years ago
Closed 16 years ago
Crash due to too much recursion in nsCSSDocumentRule::URL::~URL
Categories
(Core :: CSS Parsing and Computation, defect)
Core
CSS Parsing and Computation
Tracking
()
RESOLVED
FIXED
mozilla1.9.2a1
People
(Reporter: jruderman, Assigned: Waldo)
References
Details
(Keywords: crash, testcase)
Attachments
(2 files, 1 obsolete file)
412 bytes,
text/html
|
Details | |
1.89 KB,
patch
|
dbaron
:
review+
dbaron
:
superreview+
|
Details | Diff | Splinter Review |
http://mxr.mozilla.org/mozilla-central/source/layout/style/nsCSSRules.h#209
~URL() { delete next; }
Should probably be converted into a loop, either in the destructor or in whatever causes the destructor to run.
Assignee | ||
Comment 1•16 years ago
|
||
Replacing all delete calls with ->Destroy() calls would perhaps be aesthetically better (and would avoid a next-null check if the compiler's not super-clever), but then you can't have automatic destruction of nsCSSDocumentRule::mURLs, and the patch would touch more lines. I prefer this given the more-lines concern, but your call which is better.
Rather than adding a Destroy function, could you just use the NS_CSS_DELETE_LIST_MEMBER macro? This also has the advantage of making it easier to find all the places where we do this.
Attachment #357333 -
Flags: review?(dbaron) → review-
Also, it seems like the test should instead go in layout/style/crashtests/
Assignee | ||
Comment 4•16 years ago
|
||
Attachment #357333 -
Attachment is obsolete: true
Attachment #357437 -
Flags: review?(dbaron)
Comment on attachment 357437 [details] [diff] [review]
Done and done
r+sr=dbaron
Attachment #357437 -
Flags: superreview+
Attachment #357437 -
Flags: review?(dbaron)
Attachment #357437 -
Flags: review+
Assignee | ||
Comment 6•16 years ago
|
||
Status: ASSIGNED → RESOLVED
Closed: 16 years ago
Flags: in-testsuite+
OS: Mac OS X → All
Hardware: x86 → All
Resolution: --- → FIXED
Target Milestone: --- → mozilla1.9.2a1
Reporter | ||
Updated•16 years ago
|
Blocks: jesse-css-grammar-fuzzer
You need to log in
before you can comment on or make changes to this bug.
Description
•