Closed Bug 260961 Opened 21 years ago Closed 21 years ago

Crash if I print the page [@ nsCOMPtr<nsIRenderingContext>::get]

Categories

(Core :: Printing: Output, defect)

x86
Linux
defect
Not set
critical

Tracking

()

RESOLVED FIXED

People

(Reporter: jf.rameau, Assigned: roc)

References

()

Details

(Keywords: crash, regression, testcase)

Crash Data

Attachments

(3 files)

User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.2) Gecko/20040803 Epiphany/1.4.0 Build Identifier: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.2) Gecko/20040803 Epiphany/1.4.0 Crashes Epiphany/Mozilla 1.7.2 but also Firefox 0.9.3 (Linux Fedora Core 2) Reproducible: Always Steps to Reproduce: 1.Load the page http://iwedia.com/En/Emploi.php 2.Print it 3. Actual Results: Crash Expected Results: Print the page :)
Attached file stacktrace
(gdb) frame 6 #6 0x01a6d205 in nsEPSObjectPS::EPSFFgets (this=0xfefa3d80, aBuffer=@0xfefa3ca0) at nsEPSObjectPS.cpp:97 97 int ch = *mCurrPos++; (gdb) p mCurrPos $2 = 0x0
That's an interesting stack trace, but moz 1.7x and firefox don't include the EPS printing support. I can reproduce this with a trunk build from Sept. 19 (before EPS was checked in). In my case it's a problem in nsViewManager: (gdb) bt 15 #0 0x407e6006 in nanosleep () from /lib/i686/libc.so.6 #1 0xffffffa0 in ?? () #2 0x407e5e37 in sleep () from /lib/i686/libc.so.6 #3 0x0806d38e in ah_crap_handler (signum=1082554784) at /extra/kherron/moz/mozilla/xpfe/bootstrap/nsSigHandlers.cpp:133 #4 0x41c5b20c in nsProfileLock::FatalSignalHandler (signo=11) at /extra/kherron/moz/mozilla/profile/dirserviceprovider/src/nsProfileLock.cpp:208 #5 0x4011c4ec in __pthread_clock_settime () from /lib/i686/libpthread.so.0 #6 <signal handler called> #7 0x4148bea6 in nsCOMPtr<nsIRenderingContext>::get (this=0x95547b0) at nsCOMPtr.h:693 #8 0x4148bd1d in nsCOMPtr<nsIRenderingContext>::operator nsDerivedSafe<nsIRenderingContext>* (this=0x95547b0) at nsCOMPtr.h:705 #9 0x4182f61d in nsViewManager::RenderViews (this=0x9087db0, aRootView=0x95547b0, aRC=@0x984acd8, aRegion=@0xbfffee40, aRCSurface=0x0, aDisplayList=@0xbfffee90) at /extra/kherron/moz/mozilla/view/src/nsViewManager.cpp:1291 #10 0x41834429 in nsViewManager::Display (this=0x9087db0, aView=0x9071358, aX=0, aY=-1073746368, aClipRect=@0xbfffef80) at /extra/kherron/moz/mozilla/view/src/nsViewManager.cpp:3297 #11 0x4147c95b in nsSimplePageSequenceFrame::PrintNextPage (this=0x974d358, aPresContext=0x9071358) at /extra/kherron/moz/mozilla/layout/html/base/src/nsSimplePageSequence.cpp:872 #12 0x415b0ed3 in nsPrintEngine::PrintPage (this=0x905aec0, aPresContext=0x9231630, aPrintSettings=0x9231630, aPO=0x9066a20, aInRange=@0xbffff038) at /extra/kherron/moz/mozilla/content/base/src/nsPrintEngine.cpp:3539 #13 0x415bac64 in nsPagePrintTimer::Notify (this=0x93c1fc0, timer=0x93a36b8) at /extra/kherron/moz/mozilla/content/base/src/nsPagePrintTimer.cpp:91 #14 0x40a67740 in nsTimerImpl::Fire (this=0x93a36b8) at /extra/kherron/moz/mozilla/xpcom/threads/nsTimerImpl.cpp:386 (More stack frames follow...) (gdb) frame 9 #9 0x4182f61d in nsViewManager::RenderViews (this=0x9087db0, aRootView=0x95547b0, aRC=@0x984acd8, aRegion=@0xbfffee40, aRCSurface=0x0, aDisplayList=@0xbfffee90) at /extra/kherron/moz/mozilla/view/src/nsViewManager.cpp:1291 1291 nsIRenderingContext* RCs[2] = { buffers->mBlackCX, buffers->mWhiteCX }; (gdb) p buffers $2 = (BlendingBuffers *) 0x0 The last bit printed before the crash is as follows. The OS2 table assertion is pretty common and should be unrelated to this crash. ###!!! ASSERTION: unable to get OS2 table: 'tt_os2', file /extra/kherron/moz/mozilla/gfx/src/ps/nsFontMetricsPS.cpp, line 1346 Break: at file /extra/kherron/moz/mozilla/gfx/src/ps/nsFontMetricsPS.cpp, line 1346 ###!!! ASSERTION: Cannot support translucent elements with doublebuffering disabled: 'aRCSurface', file /extra/kherron/moz/mozilla/view/src/nsViewManager.cpp, line 1298 Break: at file /extra/kherron/moz/mozilla/view/src/nsViewManager.cpp, line 1298 Program /extra/kherron/moz/gtk2/dist/bin/mozilla-bin (pid = 12222) received signal 11.
Andrew Schultz wrote: > Created an attachment (id=159732) > stacktrace > > (gdb) frame 6 > #6 0x01a6d205 in nsEPSObjectPS::EPSFFgets (this=0xfefa3d80, > aBuffer=@0xfefa3ca0) at nsEPSObjectPS.cpp:97 > 97 int ch = *mCurrPos++; > (gdb) p mCurrPos > $2 = 0x0 Erm... which plugins do you have installed ?
Andrew Schultz wrote: > (gdb) p mCurrPos > $2 = 0x0 What is the value of |mData| in this case ?
Attached file testcase
printing this testcase crashes linux trunk 2004092204. the stack is as in comment 2
this regressed between linux trunk 2004022308 and 2004022407
Status: UNCONFIRMED → NEW
Ever confirmed: true
Summary: Crash if I print the page → Crash if I print the page [@ nsCOMPtr<nsIRenderingContext>::get]
Is someone trying to use -moz-opacity on this page?
BTW: Printing SVG now crashes in a similar way... ;-(
> Is someone trying to use -moz-opacity on this page? testcase (attachment 159803 [details]): <div style="height:20px; opacity:0.4;"></div>
oh, the original URL also does -moz-opacity (and MozOpacity via DOM), but it's not needed to crash see http://iwedia.com/En/menu_core.js and http://iwedia.com/En/menu_data.js (not that they're readable)
Attached patch fixSplinter Review
Okay, this fixes the crash. The core problem is that printing doesn't support opacity, but this will work for now.
Assignee: core.printing → roc
Status: NEW → ASSIGNED
Comment on attachment 160095 [details] [diff] [review] fix Simple crash avoidance
Attachment #160095 - Flags: superreview?(bzbarsky)
Attachment #160095 - Flags: review?(bzbarsky)
Comment on attachment 160095 [details] [diff] [review] fix r+sr=bzbarsky, but please make sure there is a bug on the underlying printing issue...
Attachment #160095 - Flags: superreview?(bzbarsky)
Attachment #160095 - Flags: superreview+
Attachment #160095 - Flags: review?(bzbarsky)
Attachment #160095 - Flags: review+
Robert O'Callahan wrote: > Okay, this fixes the crash. The core problem is that printing doesn't support > opacity, ... yet. Windows GDI may be able to support transparency and Xprint will get support for that next year... :) > but this will work for now.
*** Bug 61674 has been marked as a duplicate of this bug. ***
Checked in. Bug 262019 filed on printing not working with -moz-opacity.
fixed
Status: ASSIGNED → RESOLVED
Closed: 21 years ago
Resolution: --- → FIXED
*** Bug 281789 has been marked as a duplicate of this bug. ***
*** Bug 286489 has been marked as a duplicate of this bug. ***
Crash Signature: [@ nsCOMPtr<nsIRenderingContext>::get]
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: