Closed Bug 484932 Opened 16 years ago Closed 16 years ago

Printing Sun Java System Communications Express page caused a crash [@ moz_drawingarea_resize]

Categories

(Core :: Widget: Gtk, defect)

1.9.1 Branch
All
Linux
defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: ginnchen+exoracle, Assigned: ginnchen+exoracle)

Details

(Keywords: fixed1.9.1, regression)

Attachments

(2 files, 1 obsolete file)

1) Log in to Sun Java System Communications Express server. 2) Print the Inbox page. 3) Firefox crashed with no output to file/printer. Print preview is fine. The same page works fine with Firefox 3.0.4. Here's the output from debug build of mozilla-central. ++WEBSHELL f0ca1e80 == 16 ++DOMWINDOW == 30 (f05881f0) [serial = 53] [outer = 0] ++DOMWINDOW == 31 (f05888f0) [serial = 54] [outer = f05881c0] Trying to position a sizeless window; caller should have called sizeToContent() or sizeTo(). See bug 75649. WARNING: Warning: tried to create a new child widget with no parent!: file /export/home/ginn/work/mozilla-central/widget/src/gtk2/nsWindow.cpp, line 3905 WARNING: Warning: tried to create a new child widget with no parent!: file /export/home/ginn/work/mozilla-central/widget/src/gtk2/nsWindow.cpp, line 3905 WARNING: Warning: tried to create a new child widget with no parent!: file /export/home/ginn/work/mozilla-central/widget/src/gtk2/nsWindow.cpp, line 3905 WARNING: Warning: tried to create a new child widget with no parent!: file /export/home/ginn/work/mozilla-central/widget/src/gtk2/nsWindow.cpp, line 3905 WARNING: Warning: tried to create a new child widget with no parent!: file /export/home/ginn/work/mozilla-central/widget/src/gtk2/nsWindow.cpp, line 3905 WARNING: Warning: tried to create a new child widget with no parent!: file /export/home/ginn/work/mozilla-central/widget/src/gtk2/nsWindow.cpp, line 3905 WARNING: Warning: tried to create a new child widget with no parent!: file /export/home/ginn/work/mozilla-central/widget/src/gtk2/nsWindow.cpp, line 3905 WARNING: Warning: tried to create a new child widget with no parent!: file /export/home/ginn/work/mozilla-central/widget/src/gtk2/nsWindow.cpp, line 3905 ###!!! ASSERTION: Unexpected containers: 'SameCOMIdentity(debugDocContainer, debugDocShell)', file ../../../layout/base/nsDocumentViewer.cpp, line 2083 WARNING: Warning: tried to create a new child widget with no parent!: file /export/home/ginn/work/mozilla-central/widget/src/gtk2/nsWindow.cpp, line 3905 WARNING: Warning: tried to create a new child widget with no parent!: file /export/home/ginn/work/mozilla-central/widget/src/gtk2/nsWindow.cpp, line 3905 nsBlockReflowContext: Frameset(frameset)(1)@ef0b9998 metrics=40320,1073741824! WARNING: Clamping huge window height: file /export/home/ginn/work/mozilla-central/widget/src/gtk2/nsWindow.cpp, line 4296 ###!!! ASSERTION: Unexpected containers: 'SameCOMIdentity(debugDocContainer, debugDocShell)', file ../../../layout/base/nsDocumentViewer.cpp, line 2083 WARNING: Clamping huge window height: file /export/home/ginn/work/mozilla-central/widget/src/gtk2/nsWindow.cpp, line 4296 (dbx 1) where current thread: t@1 [1] _lwp_kill(0x1, 0xb, 0xb, 0xfee99f3a), at 0xfeea17c5 [2] thr_kill(0x1, 0xb, 0x80412e8, 0xfee4a02e), at 0xfee99f5c [3] raise(0xb, 0x0), at 0xfee4a03a =>[4] nsProfileLock::FatalSignalHandler(signo = 11), line 212 in "nsProfileLock.cpp" [5] __sighndlr(0xb, 0x0, 0x80413e4, 0xfac2b760), at 0xfee9c60f [6] call_user_handler(0xb), at 0xfee8fbaf [7] sigacthandler(0xb, 0x0, 0x80413e4, 0xf, 0x0, 0x0), at 0xfee8fddf ---- called from signal handler with signal 11 (SIGSEGV) ------ [8] moz_drawingarea_resize(drawingarea = (nil), width = 504, height = 32767), line 236 in "mozdrawingarea.c" [9] nsWindow::NativeResize(this = 0xefb6e7b0, aWidth = 504, aHeight = 32767, aRepaint = 1), line 4193 in "nsWindow.cpp" [10] nsWindow::Resize(this = 0xefb6e7b0, aWidth = 504, aHeight = 13421670, aRepaint = 1), line 934 in "nsWindow.cpp" [11] nsView::DoResetWidgetBounds(this = 0xefb9c580, aMoveOnly = 0, aInvalidateChangedSize = 1), line 429 in "nsView.cpp" [12] nsView::ResetWidgetBounds(this = 0xefb9c580, aRecurse = 0, aMoveOnly = 0, aInvalidateChangedSize = 1), line 350 in "nsView.cpp" [13] nsViewManager::ProcessPendingUpdates(this = 0xeee3e8e0, aView = 0xefb9c580, aDoInvalidate = 1), line 618 in "nsViewManager.cpp" [14] nsViewManager::ProcessPendingUpdates(this = 0xeee3e8e0, aView = 0xefb9c4c0, aDoInvalidate = 1), line 624 in "nsViewManager.cpp" [15] nsViewManager::ProcessPendingUpdates(this = 0xeee3e8e0, aView = 0xefb9c2e0, aDoInvalidate = 1), line 624 in "nsViewManager.cpp" [16] nsViewManager::ProcessPendingUpdates(this = 0xeee3e8e0, aView = 0xefb9c220, aDoInvalidate = 1), line 624 in "nsViewManager.cpp" [17] nsViewManager::ProcessPendingUpdates(this = 0xeee3e8e0, aView = 0xef2ccee0, aDoInvalidate = 1), line 624 in "nsViewManager.cpp" [18] nsViewManager::ProcessPendingUpdates(this = 0xeee3e8e0, aView = 0xef2cce80, aDoInvalidate = 1), line 624 in "nsViewManager.cpp" [19] nsViewManager::ProcessPendingUpdates(this = 0xeee3e8e0, aView = 0xef2cce20, aDoInvalidate = 1), line 624 in "nsViewManager.cpp" [20] nsViewManager::ProcessPendingUpdates(this = 0xeee3e8e0, aView = 0xef2ccca0, aDoInvalidate = 1), line 624 in "nsViewManager.cpp" [21] nsViewManager::FlushPendingInvalidates(this = 0xeee3e8e0), line 2192 in "nsViewManager.cpp" [22] nsViewManager::EnableRefresh(this = 0xeee3e8e0, aUpdateFlags = 0), line 1911 in "nsViewManager.cpp" [23] nsViewManager::EndUpdateViewBatch(this = 0xeee3e8e0, aUpdateFlags = 0), line 1954 in "nsViewManager.cpp" [24] nsIViewManager::UpdateViewBatch::EndUpdateViewBatch(this = 0x8041970, aUpdateFlags = 0), line 383 in "nsIViewManager.h" [25] PresShell::DoFlushPendingNotifications(this = 0xef207400, aType = Flush_Layout, aInterruptibleReflow = 0), line 4720 in "nsPresShell.cpp" [26] PresShell::FlushPendingNotifications(this = 0xef207400, aType = Flush_Layout), line 4627 in "nsPresShell.cpp" [27] nsPrintEngine::ReflowPrintObject(this = 0xef09a200, aPO = 0xef09a340), line 2008 in "nsPrintEngine.cpp" [28] nsPrintEngine::ReflowDocList(this = 0xef09a200, aPO = 0xef09a340, aSetPixelScale = 0), line 1840 in "nsPrintEngine.cpp" [29] nsPrintEngine::ReflowDocList(this = 0xef09a200, aPO = 0xef09a2c0, aSetPixelScale = 0), line 1845 in "nsPrintEngine.cpp" [30] nsPrintEngine::ReflowDocList(this = 0xef09a200, aPO = 0xef09a280, aSetPixelScale = 0), line 1845 in "nsPrintEngine.cpp" [31] nsPrintEngine::SetupToPrintContent(this = 0xef09a200), line 1648 in "nsPrintEngine.cpp" [32] nsPrintEngine::DocumentReadyForPrinting(this = 0xef09a200), line 1480 in "nsPrintEngine.cpp" [33] nsPrintEngine::Observe(this = 0xef09a200, aSubject = (nil), aTopic = (nil), aData = (nil)), line 3227 in "nsPrintEngine.cpp" [34] nsPrintProgress::DoneIniting(this = 0xef2874c0), line 194 in "nsPrintProgress.cpp" [35] NS_InvokeByIndex_P(0xef2874c0, 0xc, 0x0, 0x80422f0, 0x0, 0x0), at 0xfeb8c361 [36] XPCWrappedNative::CallMethod(ccx = CLASS, mode = CALL_METHOD), line 2462 in "xpcwrappednative.cpp" [37] XPC_WN_CallMethod(cx = 0xeeefe800, obj = 0xf10f6020, argc = 0, argv = 0xef2f2034, vp = 0x80425f8), line 1585 in "xpcwrappednativejsops.cpp" [38] js_Invoke(cx = 0xeeefe800, argc = 0, vp = 0xef2f202c, flags = 2U), line 1341 in "jsinterp.cpp" [39] js_Interpret(cx = 0xeeefe800), line 5034 in "jsinterp.cpp" [40] js_Invoke(cx = 0xeeefe800, argc = 1U, vp = 0xef2f2020, flags = 0), line 1359 in "jsinterp.cpp" [41] js_InternalInvoke(cx = 0xeeefe800, obj = 0xf0a6d920, fval = -250648928, flags = 0, argc = 1U, argv = 0xef2a1094, rval = 0x80466c8), line 1417 in "jsinterp.cpp" [42] JS_CallFunctionValue(cx = 0xeeefe800, obj = 0xf0a6d920, fval = -250648928, argc = 1U, argv = 0xef2a1094, rval = 0x80466c8), line 5190 in "jsapi.cpp" [43] nsJSContext::CallEventHandler(this = 0xefb025b0, aTarget = 0xf05888c0, aScope = 0xf0a6d920, aHandler = 0xf10f66a0, aargv = 0xef9f5f64, arv = 0x804679c), line 2006 in "nsJSEnvironment.cpp" [44] nsGlobalWindow::RunTimeout(this = 0xf05888c0, aTimeout = 0xeff13380), line 7788 in "nsGlobalWindow.cpp" [45] nsGlobalWindow::TimerCallback(aTimer = 0xeff133c0, aClosure = 0xeff13380), line 8127 in "nsGlobalWindow.cpp" [46] nsTimerImpl::Fire(this = 0xeff133c0), line 428 in "nsTimerImpl.cpp" [47] nsTimerEvent::Run(this = 0xef299c20), line 520 in "nsTimerImpl.cpp" [48] nsThread::ProcessNextEvent(this = 0xf9c88a10, mayWait = 1, result = 0x8046ac4), line 510 in "nsThread.cpp" [49] NS_ProcessNextEvent_P(thread = 0xf9c88a10, mayWait = 1), line 230 in "nsThreadUtils.cpp" [50] nsBaseAppShell::Run(this = 0xf3b7dec0), line 170 in "nsBaseAppShell.cpp" [51] nsAppStartup::Run(this = 0xf39103a0), line 192 in "nsAppStartup.cpp" [52] XRE_main(argc = 1, argv = 0x80475a4, aAppData = 0xf9c010c0), line 3219 in "nsAppRunner.cpp" [53] main(argc = 1, argv = 0x80475a4), line 156 in "nsBrowserApp.cpp"
The regression happens between Firefox 3.1 beta 2 and beta 3.
It is caused by the patch of bug 467881. http://hg.mozilla.org/releases/mozilla-1.9.1/rev/5ce32275362a A null check works, but I don't know if it is the right fix.
Component: Printing: Output → Widget: Gtk
OS: OpenSolaris → Linux
QA Contact: printing → gtk
Hardware: x86 → All
Flags: blocking1.9.1?
Flags: blocking1.9.1? → blocking1.9.1+
Attached file test case (obsolete) (deleted) —
Assignee: nobody → dbaron
Attached file testcase (deleted) —
It seems I could not recreate the bug with a single file. I was fooled by browser cache. This tarball should work. Usage: On Linux or Solaris, untar the file, open test.html in browser. Press Ctrl+P, select a printer of print to file. Click Print button, it will crash.
Attachment #369462 - Attachment is obsolete: true
Assignee: dbaron → nobody
I've no access bug 467881. Please help on fixing this blocking bug.
Keywords: helpwanted
Attached patch null check patch (deleted) — Splinter Review
We don't have mDrawingarea because we got: WARNING: Warning: tried to create a new child widget with no parent!: file /export/home/ginn/work/mozilla-central/widget/src/gtk2/nsWindow.cpp, line 3905 So the null check is necessary anyway. I checked nsWindow.cpp, it seems it is the only missing null check for mDrawingarea. (mIsTopLevel/mContainer guarantees mDrawingarea) For the assertion ###!!! ASSERTION: Unexpected containers: 'SameCOMIdentity(debugDocContainer, debugDocShell)', file ../../../layout/base/nsDocumentViewer.cpp, line 2083 it happens on all platform, I will file a separate bug. Although bug 467881 is landed for Firefox 3.0.8, I didn't reproduce this bug with current Firefox 3.0.8pre.
Assignee: nobody → ginn.chen
Status: NEW → ASSIGNED
Attachment #369656 - Flags: review?(roc)
Filed Bug 485893 for assertions.
Status: ASSIGNED → RESOLVED
Closed: 16 years ago
Keywords: helpwantedfixed1.9.1
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: