Closed Bug 1000370 Opened 10 years ago Closed 10 years ago

Intermittent opentype-stretchy.html | application crashed [@ _cairo_dwrite_font_face_scaled_font_create]

Categories

(Core :: Graphics: Text, defect)

x86
Windows 7
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla31
Tracking Status
firefox29 --- unaffected
firefox30 --- unaffected
firefox31 --- fixed
firefox-esr24 --- unaffected

People

(Reporter: RyanVM, Assigned: fredw)

References

Details

(Keywords: crash, intermittent-failure)

Attachments

(1 file)

Can't help but notice that this happened shortly after bug 407059 landed on inbound.

https://tbpl.mozilla.org/php/getParsedLog.php?id=38332938&tree=Mozilla-Inbound

Windows 7 32-bit mozilla-inbound opt test reftest-no-accel on 2014-04-23 08:55:10 PDT for push 32616a509bed
slave: t-w732-ix-094

09:10:40     INFO -  REFTEST TEST-START | file:///C:/slave/test/build/tests/reftest/tests/layout/reftests/mathml/opentype-stretchy.html
09:10:40     INFO -  REFTEST TEST-LOAD | file:///C:/slave/test/build/tests/reftest/tests/layout/reftests/mathml/opentype-stretchy.html | 6198 / 10892 (56%)
09:10:40     INFO -  ??????????????????????????: TREFTEST TEST-LOAD | file:///C:/slave/test/build/tests/reftest/tests/layout/reftests/mathml/opentype-stretchy-ref.html | 6198 / 10892 (56%)
09:10:42     INFO -  TEST-INFO | Main app process: exit status c0000005
09:10:42  WARNING -  TEST-UNEXPECTED-FAIL | file:///C:/slave/test/build/tests/reftest/tests/layout/reftests/mathml/opentype-stretchy.html | Exited with code -1073741819 during test run
09:10:42     INFO -  INFO | automation.py | Application ran for: 0:10:40.797000
09:10:42     INFO -  INFO | zombiecheck | Reading PID log: c:\users\cltbld\appdata\local\temp\tmphl9uwgpidlog
09:10:42     INFO -  ==> process 4024 launched child process 3856 ("C:\slave\test\build\application\firefox\plugin-container.exe" --channel=4024.12c2fef0.2003092643 "c:\users\cltbld\appdata\local\temp\tmp7hhixf.mozrunner\plugins\nptest.dll" -greomni "C:\slave\test\build\application\firefox\omni.ja" -appomni "C:\slave\test\build\application\firefox\browser\omni.ja" -appdir "C:\slave\test\build\application\firefox\browser" - 4024 "\\.\pipe\gecko-crash-server-pipe.4024" plugin)
09:10:42     INFO -  mozcrash INFO | Downloading symbols from: https://ftp-ssl.mozilla.org/pub/mozilla.org/firefox/tinderbox-builds/mozilla-inbound-win32/1398264242/firefox-31.0a1.en-US.win32.crashreporter-symbols.zip
09:10:48  WARNING -  PROCESS-CRASH | file:///C:/slave/test/build/tests/reftest/tests/layout/reftests/mathml/opentype-stretchy.html | application crashed [@ _cairo_dwrite_font_face_scaled_font_create]
09:10:48     INFO -  Crash dump filename: c:\users\cltbld\appdata\local\temp\tmp7hhixf.mozrunner\minidumps\8a5d61ab-e7b1-4792-bdae-9d292dabaf5b.dmp
09:10:48     INFO -  Operating system: Windows NT
09:10:48     INFO -                    6.1.7601 Service Pack 1
09:10:48     INFO -  CPU: x86
09:10:48     INFO -       GenuineIntel family 6 model 30 stepping 5
09:10:48     INFO -       8 CPUs
09:10:48     INFO -  Crash reason:  EXCEPTION_ACCESS_VIOLATION_READ
09:10:48     INFO -  Crash address: 0x5a5a5a5a
09:10:48     INFO -  Thread 0 (crashed)
09:10:48     INFO -   0  gkmedias.dll!_cairo_dwrite_font_face_scaled_font_create [cairo-dwrite-font.cpp:32616a509bed : 510 + 0x38]
09:10:48     INFO -      eip = 0x669d55ac   esp = 0x0024c49c   ebp = 0x0024c518   ebx = 0x12d18400
09:10:48     INFO -      esi = 0x5a5a5a5a   edi = 0x0024c558   eax = 0x00000000   ecx = 0x3541e218
09:10:48     INFO -      edx = 0x00020001   efl = 0x00210246
09:10:48     INFO -      Found by: given as instruction pointer in context
09:10:48     INFO -   1  gkmedias.dll!_moz_cairo_scaled_font_create [cairo-scaled-font.c:32616a509bed : 1054 + 0x1a]
09:10:48     INFO -      eip = 0x669c94d7   esp = 0x0024c520   ebp = 0x0024c700
09:10:48     INFO -      Found by: call frame info
09:10:48     INFO -   2  gkmedias.dll!_cairo_gstate_ensure_scaled_font [cairo-gstate.c:32616a509bed : 1811 + 0x16]
09:10:48     INFO -      eip = 0x669b5437   esp = 0x0024c708   ebp = 0x0024c74c
09:10:48     INFO -      Found by: call frame info
09:10:48     INFO -   3  gkmedias.dll!_cairo_gstate_get_scaled_font [cairo-gstate.c:32616a509bed : 1685 + 0x9]
09:10:48     INFO -      eip = 0x669b98d1   esp = 0x0024c754   ebp = 0x0024c758
09:10:48     INFO -      Found by: call frame info
09:10:48     INFO -   4  gkmedias.dll!_moz_cairo_get_scaled_font [cairo.c:32616a509bed : 3265 + 0xb]
09:10:48     INFO -      eip = 0x669d4aab   esp = 0x0024c760   ebp = 0x0024c770
09:10:48     INFO -      Found by: call frame info
09:10:48     INFO -   5  xul.dll!DCFromContext::DCFromContext(gfxContext *) [gfxWindowsPlatform.h:32616a509bed : 72 + 0xd]
09:10:48     INFO -      eip = 0x65481aa9   esp = 0x0024c778   ebp = 0x0024c790
09:10:48     INFO -      Found by: call frame info
09:10:48     INFO -   6  xul.dll!gfxGDIFont::GetGlyphWidth(gfxContext *,unsigned short) [gfxGDIFont.cpp:32616a509bed : 552 + 0xa]
09:10:48     INFO -      eip = 0x654827df   esp = 0x0024c798   ebp = 0x0024c7c4
09:10:48     INFO -      Found by: call frame info
09:10:48     INFO -   7  xul.dll!gfxFont::GetGlyphHAdvance(gfxContext *,unsigned short) [gfxFont.cpp:32616a509bed : 2035 + 0xc]
09:10:48     INFO -      eip = 0x654922fe   esp = 0x0024c7cc   ebp = 0x0024c7d8
09:10:48     INFO -      Found by: call frame info
09:10:48     INFO -   8  xul.dll!nsOpenTypeTable::MakeTextRun(gfxContext *,int,gfxFontGroup *,nsGlyphCode const &) [nsMathMLChar.cpp:32616a509bed : 548 + 0x15]
09:10:48     INFO -      eip = 0x65d71b53   esp = 0x0024c7e0   ebp = 0x0024c82c
09:10:48     INFO -      Found by: call frame info
From the crash log, it looks like !SetupCairoFont(aCtx) should be called before GetGlyphWidth(aCtx, aGID) too... I'll upload a patch.
Attached patch PatchSplinter Review
Assignee: nobody → fred.wang
Status: NEW → ASSIGNED
Attachment #8411216 - Flags: review?(jfkthame)
Comment on attachment 8411216 [details] [diff] [review]
Patch

Review of attachment 8411216 [details] [diff] [review]:
-----------------------------------------------------------------

Yes - seeing _cairo_dwrite_font_face_scaled_font_create on the stack when it's a reftest-no-accel run (which should use GDI fonts) looks like a smoking gun indicating that the font hadn't been initialized yet. So this should fix it.
Attachment #8411216 - Flags: review?(jfkthame) → review+
Keywords: checkin-needed
https://hg.mozilla.org/mozilla-central/rev/3202a3687c0a
Status: ASSIGNED → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla31
You need to log in before you can comment on or make changes to this bug.