Last Comment Bug 362724 - Crash [@ nsIView::Destroy] on print preview
: Crash [@ nsIView::Destroy] on print preview
Status: VERIFIED FIXED
[sg:moderate?]
: crash, testcase, verified1.8.0.10, verified1.8.1.2
Product: Core
Classification: Components
Component: Layout (show other bugs)
: Trunk
: x86 Windows XP
: -- critical (vote)
: ---
Assigned To: Bernd
:
:
Mentors:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2006-12-04 05:25 PST by Martijn Wargers [:mwargers] (not working for Mozilla)
Modified: 2011-06-13 10:01 PDT (History)
1 user (show)
See Also:
Crash Signature:
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---


Attachments
Minimised testcase (441 bytes, text/html)
2006-12-04 05:27 PST, Martijn Wargers [:mwargers] (not working for Mozilla)
no flags Details
logfile (17.63 KB, text/plain)
2006-12-04 15:14 PST, Martijn Wargers [:mwargers] (not working for Mozilla)
no flags Details
Minimised testcase (316 bytes, text/html)
2006-12-05 01:23 PST, Martijn Wargers [:mwargers] (not working for Mozilla)
no flags Details
testcase2 (333 bytes, text/html)
2006-12-05 02:01 PST, Martijn Wargers [:mwargers] (not working for Mozilla)
no flags Details
testcase3 (530 bytes, text/html)
2006-12-05 03:16 PST, Martijn Wargers [:mwargers] (not working for Mozilla)
no flags Details
patch (1.96 KB, patch)
2006-12-07 10:35 PST, Bernd
roc: review+
roc: superreview+
dveditz: approval1.8.1.2+
dveditz: approval1.8.0.10+
Details | Diff | Splinter Review

Description Martijn Wargers [:mwargers] (not working for Mozilla) 2006-12-04 05:25:27 PST
See upcoming testcases.
The unminimised testcase crashes on print preview. The minimised testcase crashes when closing print preview for me.
The unminimised testcase also crashes on reflow branch builds for me.
But the testcase don't crash on the latest 1.8 branch. It seems to be fixed somehow on the 1.8 branch between 2006-08-02 and 2006-08-03:
http://bonsai.mozilla.org/cvsquery.cgi?treeid=default&module=all&branch=MOZILLA_1_8_BRANCH&branchtype=match&dir=&file=&filetype=match&who=&whotype=match&sortby=Date&hours=2&date=explicit&mindate=2006-08-02+04&maxdate=2006-08-03+07&cvsroot=%2Fcvsroot
Maybe fixed somehow with the patch for bug 302911?
Comment 1 Martijn Wargers [:mwargers] (not working for Mozilla) 2006-12-04 05:27:08 PST
Created attachment 247408 [details]
Minimised testcase
Comment 3 Bernd 2006-12-04 12:40:56 PST
This doesn't crash for me, can you produce a reflow log so that I can estimate what frames are involved.
Comment 4 Martijn Wargers [:mwargers] (not working for Mozilla) 2006-12-04 15:14:16 PST
Created attachment 247481 [details]
logfile

This is the log from the moment when I opened up the unminimised testcase in print preview, until I closed print preview (in which I crash).
I hope it's useful.
Comment 5 Bernd 2006-12-04 21:48:48 PST
Martijn, is it possible to convert your test cases from pixel heights to page-break properties (http://www.w3.org/TR/REC-CSS2/page.html#page-breaks)? This would make them much more reliable.
Comment 6 Bernd 2006-12-04 21:54:24 PST
I get a couple of asserts with the unminimized testcase

###!!! ASSERTION: Allowed only one anonymous view between frames: 'ancestorView
== view->GetParent()->GetParent()', file d:/moz_src/mozilla/layout/generic/nsCon
tainerFrame.cpp, line 272
###!!! ASSERTION: Creating a circular frame list, this is very bad.: 'this != aN
extSibling', file d:\moz_src\mozilla\layout\generic\nsIFrame.h, line 677

could you please create minimized test cases for the asserts (bonus points if they work with the page-break properties ;-) )

Comment 7 Martijn Wargers [:mwargers] (not working for Mozilla) 2006-12-05 01:23:34 PST
Created attachment 247517 [details]
Minimised testcase

(In reply to comment #5)
> Martijn, is it possible to convert your test cases from pixel heights to
> page-break properties (http://www.w3.org/TR/REC-CSS2/page.html#page-breaks)?
> This would make them much more reliable.

Ok, thanks, this allowed me to minimise the minimised testcase to this. I hope this one crashes for you when closing print preview, it does for me.
Comment 8 Martijn Wargers [:mwargers] (not working for Mozilla) 2006-12-05 02:01:25 PST
Created attachment 247521 [details]
testcase2

Testcase that gives the "###!!! ASSERTION: Allowed only one anonymous view between frames: 'ancestorView== view->GetParent()->GetParent()'" assertion.
It uses page-break-after: always; ==> 1st bonus point for me.
Comment 9 Martijn Wargers [:mwargers] (not working for Mozilla) 2006-12-05 03:16:06 PST
Created attachment 247525 [details]
testcase3

No bonus points for this one.
This gives the "###!!! ASSERTION: Creating a circular frame list, this is very bad.:" on print preview for me.
It isn't as minimised as far as I could, but still quite a bit complicated.
Comment 10 Bernd 2006-12-05 10:08:28 PST
cool that works now very smooth to get lizard down to its knees
Comment 11 Bernd 2006-12-07 10:35:15 PST
Created attachment 247852 [details] [diff] [review]
patch

This is basically what you did 3.5 years ago for blocks
https://bugzilla.mozilla.org/show_bug.cgi?id=201767#c19
Comment 12 Bernd 2006-12-07 10:46:29 PST
The patch fixes the crash, but the assert from testcase 3 is something different
Comment 13 Bernd 2006-12-07 10:50:53 PST
Testcase 3 should be split into a separate probably public bug as it has no views involved.
Comment 14 Martijn Wargers [:mwargers] (not working for Mozilla) 2006-12-07 15:53:59 PST
(In reply to comment #13)
> Testcase 3 should be split into a separate probably public bug as it has no
> views involved.

Ok, I filed bug 363120 for that.

Comment 15 Bernd 2006-12-10 04:06:11 PST
fix checked in, we need this probably on every branch that is maintained
Comment 16 Daniel Veditz [:dveditz] 2006-12-18 15:10:47 PST
Comment on attachment 247852 [details] [diff] [review]
patch

bug 362837
Comment 17 Bernd 2007-01-06 09:49:12 PST
fixed on branches on dec. 27th 2006
Comment 18 Martijn Wargers [:mwargers] (not working for Mozilla) 2007-01-25 10:17:42 PST
Verified fixed on the latest 1.8.0.x and latest 1.8.1 branch builds, no crash anymore when closing print preview on the testcases.
The latest trunk builds hang on print preview on certain testcases, I think that's what bug 363120 is basically about.

Note You need to log in before you can comment on or make changes to this bug.