WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
69510
ASSERT(!m_transparencyCount) in GraphicsContext::~GraphicsContext
https://bugs.webkit.org/show_bug.cgi?id=69510
Summary
ASSERT(!m_transparencyCount) in GraphicsContext::~GraphicsContext
Alejandro G. Castro
Reported
2011-10-06 03:35:21 PDT
This is the backtrace: Program received signal SIGSEGV, Segmentation fault. 0x00007f2e6131b9ca in WebCore::GraphicsContext::~GraphicsContext (this=0x132c5b0, __in_chrg=<value optimized out>) at ../../../Source/WebCore/platform/graphics/GraphicsContext.cpp:91 91 ASSERT(!m_transparencyCount); (gdb) bt #0 0x00007f2e6131b9ca in WebCore::GraphicsContext::~GraphicsContext (this=0x132c5b0, __in_chrg=<value optimized out>) at ../../../Source/WebCore/platform/graphics/GraphicsContext.cpp:91 #1 0x00007f2e60a41960 in WTF::deleteOwnedPtr<WebCore::GraphicsContext> (ptr=0x132c5b0) at ../../../Source/JavaScriptCore/wtf/OwnPtrCommon.h:53 #2 0x00007f2e60a40b19 in WTF::OwnPtr<WebCore::GraphicsContext>::~OwnPtr (this=0x7fff1adfd2f0, __in_chrg=<value optimized out>) at ../../../Source/JavaScriptCore/wtf/OwnPtr.h:54 #3 0x00007f2e60bbf378 in WebKit::DrawingAreaImpl::display (this=0x123fce0, updateInfo=...) at ../../../Source/WebKit2/WebProcess/WebPage/DrawingAreaImpl.cpp:655 #4 0x00007f2e60bbea5d in WebKit::DrawingAreaImpl::display (this=0x123fce0) at ../../../Source/WebKit2/WebProcess/WebPage/DrawingAreaImpl.cpp:566 #5 0x00007f2e60bbe8f4 in WebKit::DrawingAreaImpl::displayTimerFired (this=0x123fce0) at ../../../Source/WebKit2/WebProcess/WebPage/DrawingAreaImpl.cpp:545 #6 0x00007f2e60bc00b2 in Timer<WebKit::DrawingAreaImpl>::fired (this=0x123fd70) at ../../../Source/WebKit2/Platform/RunLoop.h:127 #7 0x00007f2e60a38339 in RunLoop::TimerBase::timerFiredCallback (timer=0x123fd70) at ../../../Source/WebKit2/Platform/gtk/RunLoopGtk.cpp:106 #8 0x00007f2e5c02bc09 in g_timeout_dispatch (source=0x12b4da0, callback=0x7f2e60a382ee <RunLoop::TimerBase::timerFiredCallback(RunLoop::TimerBase*)>, user_data=0x123fd70) at gmain.c:3904 #9 0x00007f2e5c02860c in g_main_dispatch (context=0x11fa0f0) at gmain.c:2439 #10 0x00007f2e5c029b52 in g_main_context_dispatch (context=0x11fa0f0) at gmain.c:3008 #11 0x00007f2e5c02a008 in g_main_context_iterate (context=0x11fa0f0, block=1, dispatch=1, self=0x11bd8b0) at gmain.c:3086 #12 0x00007f2e5c02a766 in g_main_loop_run (loop=0x11fa3a0) at gmain.c:3294 #13 0x00007f2e60a3810d in RunLoop::run () at ../../../Source/WebKit2/Platform/gtk/RunLoopGtk.cpp:56 #14 0x00007f2e60b3f5b1 in WebKit::WebProcessMainGtk (argc=2, argv=0x7fff1adfd878) at ../../../Source/WebKit2/WebProcess/gtk/WebProcessMainGtk.cpp:64 #15 0x0000000000400984 in main (argc=2, argv=0x7fff1adfd878) at ../../../Source/WebKit2/gtk/MainGtk.cpp:31
Attachments
Patch
(3.36 KB, patch)
2011-11-15 09:44 PST
,
Sergio Villar Senin
simon.fraser
: review+
Details
Formatted Diff
Diff
View All
Add attachment
proposed patch, testcase, etc.
Sergio Villar Senin
Comment 1
2011-10-24 07:44:49 PDT
Alex it isn't crashing for me anymore. Could you confirm that?
Alejandro G. Castro
Comment 2
2011-10-24 11:17:40 PDT
It still crashes in my desktop but it does not crash in my laptop, not sure why. Probably I should check this one in my desktop.
Sergio Villar Senin
Comment 3
2011-11-10 08:27:08 PST
(In reply to
comment #2
)
> It still crashes in my desktop but it does not crash in my laptop, not sure why. Probably I should check this one in my desktop.
I'll take a look since it's consistently asserting for me in debug builds.
Sergio Villar Senin
Comment 4
2011-11-11 08:08:57 PST
Julien is this the same crash than the one you observed on mac when adding tests for
https://bugs.webkit.org/show_bug.cgi?id=68133
?
Julien Chaffraix
Comment 5
2011-11-11 10:57:23 PST
(In reply to
comment #4
)
> Julien is this the same crash than the one you observed on mac when adding tests for
https://bugs.webkit.org/show_bug.cgi?id=68133
?
It's not exactly the same (see
bug 68566
): it is ASSERT(m_stack.isEmpty()) that is triggered in ~GraphicsContext. It may related though.
Sergio Villar Senin
Comment 6
2011-11-15 09:44:40 PST
Created
attachment 115181
[details]
Patch
Martin Robinson
Comment 7
2011-11-15 09:48:14 PST
There are also some tests skipped in WebKit1. I believe Philippe skipped these tests. Your patch should unskip them as well.
Sergio Villar Senin
Comment 8
2011-11-15 09:49:20 PST
Adding some reviewers with good knowledge of that code.
Martin Robinson
Comment 9
2011-11-15 10:35:25 PST
***
Bug 71454
has been marked as a duplicate of this bug. ***
Simon Fraser (smfr)
Comment 10
2011-11-15 11:14:40 PST
Comment on
attachment 115181
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=115181&action=review
> Source/WebCore/rendering/InlineFlowBox.cpp:1286 > + if (pushTransparencyLayer) > + paintInfo.context->endTransparencyLayer();
It would be nice if we had an RAII class for begin/endTransparencyLayer.
Sergio Villar Senin
Comment 11
2011-11-15 23:24:49 PST
Committed
r100413
: <
http://trac.webkit.org/changeset/100413
>
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug