Closed
Bug 946532
Opened 10 years ago
Closed 10 years ago
Crash on startup when using the basic compositor
Categories
(Core :: Widget: Win32, defect)
Tracking
()
VERIFIED
FIXED
mozilla28
Tracking | Status | |
---|---|---|
firefox28 | --- | verified |
People
(Reporter: nrc, Assigned: nrc)
References
Details
Attachments
(1 file)
2.60 KB,
patch
|
dvander
:
review+
mattwoodrow
:
review+
|
Details | Diff | Splinter Review |
And with d2d enabled.
Assignee | ||
Comment 1•10 years ago
|
||
This works (fixes the crash). And I think I am doing the right thing, but I am not sure. It does rather change how we get our surfaces for remote drawing though. I'm also not really sure how to test this, other than doing a bit of browsing and testing menus, tooltips, etc. So a thorough review would be appreciated. Also anything I should make sure to test.
Attachment #8342902 -
Flags: review?(matt.woodrow)
Attachment #8342902 -
Flags: review?(dvander)
Comment on attachment 8342902 [details] [diff] [review] possible fix Thanks, crash seems to be gone!
Attachment #8342902 -
Flags: review?(dvander) → review+
Comment 3•10 years ago
|
||
Comment on attachment 8342902 [details] [diff] [review] possible fix Review of attachment 8342902 [details] [diff] [review]: ----------------------------------------------------------------- ::: widget/windows/nsWindow.cpp @@ +3528,5 @@ > + if (mTransparentSurface) { > + surf = mTransparentSurface; > + } > + } > + Whitespace! @@ +3556,5 @@ > void > nsWindow::EndRemoteDrawing() > { > + if (mTransparencyMode == eTransparencyTransparent) { > + MOZ_ASSERT(gfxWindowsPlatform::GetPlatform()->GetRenderMode() != gfxWindowsPlatform::RENDER_DIRECT2D || mTransparentSurface); Isn't it always invalid to have d2d + transparent windows?
Attachment #8342902 -
Flags: review?(matt.woodrow) → review+
Assignee | ||
Comment 4•10 years ago
|
||
(In reply to Matt Woodrow (:mattwoodrow) from comment #3) > Comment on attachment 8342902 [details] [diff] [review] > possible fix > > Review of attachment 8342902 [details] [diff] [review]: > ----------------------------------------------------------------- > > @@ +3556,5 @@ > > void > > nsWindow::EndRemoteDrawing() > > { > > + if (mTransparencyMode == eTransparencyTransparent) { > > + MOZ_ASSERT(gfxWindowsPlatform::GetPlatform()->GetRenderMode() != gfxWindowsPlatform::RENDER_DIRECT2D || mTransparentSurface); > > Isn't it always invalid to have d2d + transparent windows? I think that we are always using Cairo, but Cairo may be backed by d2d in which case the render mode is RENDER_DIRECT2D, but I'll double check.
Assignee | ||
Comment 5•10 years ago
|
||
https://hg.mozilla.org/integration/mozilla-inbound/rev/eaf6e83e80fe
Assignee | ||
Comment 6•10 years ago
|
||
And a fix: https://hg.mozilla.org/integration/mozilla-inbound/rev/ebc291b18b35
Comment 7•10 years ago
|
||
And a backout: https://hg.mozilla.org/integration/mozilla-inbound/rev/eb2a2c686cc7 https://tbpl.mozilla.org/php/getParsedLog.php?id=31653121&tree=Mozilla-Inbound c:/builds/moz2_slave/m-in-w32-d-0000000000000000000/build/widget/windows/nsWindow.cpp(3519) : error C3861: 'IsRenderMode': identifier not found Just normal debug-only bustage, or `ac_add_options --disable-unified-compilation` catching non-unified bustage?
Assignee | ||
Comment 8•10 years ago
|
||
And again: https://hg.mozilla.org/integration/mozilla-inbound/rev/396ef872cb8b
Comment 9•10 years ago
|
||
https://hg.mozilla.org/mozilla-central/rev/396ef872cb8b
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla28
Nick, can you give us steps to reproduce for QA? Thanks!
Flags: needinfo?(ncameron)
Assignee | ||
Comment 11•10 years ago
|
||
(In reply to Liz Henry :lizzard from comment #10) > Nick, can you give us steps to reproduce for QA? Thanks! If memory serves you should set the following prefs to true: layers.offmainthreadcomposition.enabled layers.offmainthreadcomposition.force-basic layers.acceleration.disabled And then just start Firefox. You can confirm you ahve the correct configuration by going to about:support, where "GPU Accelerated Windows" in the graphics section should say something like "0/1 basic (OMTC)".
Flags: needinfo?(ncameron)
status-firefox28:
--- → fixed
Keywords: verifyme
Comment 12•10 years ago
|
||
I tested on Windows 7 64bit, Windows 8.1 32bit and Windows Vista 32bit using Firefox 28 beta 7. Changed the prefs from comment 11 and restarted Firefox several times. There were no crashes.
You need to log in
before you can comment on or make changes to this bug.
Description
•