[Bug 50601] Multiple games and applications crash when using CEF / Blink web browser engine with web fonts (Artix Game Launcher / Electron apps)

WineHQ Bugzilla wine-bugs at winehq.org
Tue Feb 16 03:43:19 CST 2021


https://bugs.winehq.org/show_bug.cgi?id=50601

Anastasius Focht <focht at gmx.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
            Summary|Artix Game Launcher crashes |Multiple games and
                   |on start                    |applications crash when
                   |                            |using CEF / Blink web
                   |                            |browser engine with web
                   |                            |fonts (Artix Game Launcher
                   |                            |/ Electron apps)
     Ever confirmed|0                           |1
                URL|https://launch.artix.com/la |https://web.archive.org/web
                   |test/ArtixLauncher_win_x64. |/20210204191345/https://lau
                   |exe                         |nch.artix.com/latest/ArtixL
                   |                            |auncher_win_x64.exe
                 CC|                            |focht at gmx.net

--- Comment #2 from Anastasius Focht <focht at gmx.net> ---
Hello folks,

confirming.

Stable download link via Internet Archive:

https://web.archive.org/web/20210204191345/https://launch.artix.com/latest/ArtixLauncher_win_x64.exe

The app/launcher is an Electron-based app, using CEF / Blink browser. There are
two crashes in the launcher processes due to bug 32342 ("Millions of
applications and games using 'Webkit' or 'Blink' web browser engine crash on
startup ('Arial' and 'Times New Roman' font face name validation)")").

The infamous 'int 3' -> assert().

--- snip ---
$ pwd
/home/focht/.wine/drive_c/Program Files/Artix Game Launcher

$ wine ./Artix\ Game\ Launcher.exe
...
wine: Unhandled exception 0x80000003 in thread 200 at address 000000014286851F
(thread 0200), starting debugger...
...
0x000000014286851f EntryPoint+0xfdb56b3f in artix game launcher: int    $3

Modules:
Module    Address                    Debug info    Name (67 modules)
PE              230000-          359000    Deferred        comctl32
PE              360000-          570000    Deferred        user32
PE              570000-          5ce000    Deferred        setupapi
PE              5d0000-          5da000    Deferred        version
PE              5e0000-          693000    Deferred        ucrtbase
...
PE            7a850000-        7a854000    Deferred        opengl32
PE            7b000000-        7b0a6000    Deferred        kernelbase
PE            7b600000-        7b80b000    Deferred        kernel32
PE            7bc00000-        7bc8a000    Deferred        ntdll
PE           140000000-       1466a3000    Export          artix game launcher
...
Threads:
process  tid      prio (all id:s are in hex)
...
00000168 Artix Game Launcher.exe
    0000016c    0
...
    00000230   -2
000001b4 Artix Game Launcher.exe
    000001b8    1
...
    0000025c    0
    00000260    1
000001d4 Artix Game Launcher.exe
    000001d8    0
...
    00000244    0
000001f0 Artix Game Launcher.exe
    000001f4    0
...
    000002b0   -2
000001fc (D) C:\Program Files\Artix Game Launcher\Artix Game Launcher.exe
    00000200    0 <==
...
System information:
    Wine build: wine-6.2-33-ga9c8196e97e
    Platform: x86_64
    Version: Windows 7
    Host system: Linux
    Host version: 5.10.15-100.fc32.x86_64 
--- snip ---

--- snip ---
C:\Program Files\Artix Game Launcher\Artix Game Launcher.exe
C:\Program Files\Artix Game Launcher\Artix Game Launcher.exe --type=gpu-process
...
C:\Program Files\Artix Game Launcher\Artix Game Launcher.exe --type=utility ...
C:\Program Files\Artix Game Launcher\Artix Game Launcher.exe --type=renderer
...
--- snip ---

OP must have had either distro ttf-mscorefonts package installed or ran
'winetricks corefonts'. I give the benefit of doubt here that OP didn't
know/simply forgot about it. Still, it's important thing to mention in bug
reports if you know about it.

It can be also worked around by running 'winetricks -q arial' which doesn't
pollute the WINEPREFIX with millions of fonts.

The next crash is comment #0

--- snip ---
...
Unhandled exception: page fault on read access to 0x00000000 in 64-bit code
(0x000000014032bba0).
Register dump:
 rip:000000014032bba0 rsp:000000000022ea18 rbp:000000000022ec40 eflags:00010246
(  R- --  I  Z- -P- )
 rax:000000000022ea48 rbx:00000000044fdb40 rcx:0000000000000000
rdx:0000000000000000
 rsi:000000000022ea50 rdi:000000000022ea48  r8:0000000000000000 
r9:0000000000000002 r10:000000000009be58
 r11:0000000000000001 r12:0000000145cb5020 r13:0000000145cb4ff0
r14:000000000022ebb8 r15:000000000022ecd8
...
Backtrace:
=>0 0x000000014032bba0 EntryPoint+0xfb61a1c0() in artix game launcher
(0x000000000022ec40)
  1 0x0000000144460818 EntryPoint+0xff74ee37() in artix game launcher
(0x000000000022ec40)
  2 0x00000001441da687 EntryPoint+0xff4c8ca6() in artix game launcher
(0x000000000022ec40)
  3 0x00000001441da463 EntryPoint+0xff4c8a82() in artix game launcher
(0x000000000022ec40)
  4 0x00000001441daa90 EntryPoint+0xff4c90af() in artix game launcher
(0x000000000022ec40)
  5 0x0000000143df0dcf EntryPoint+0xff0df3ee() in artix game launcher
(0x0000000000000000)
  6 0x0000000143ec2efe EntryPoint+0xff1b151d() in artix game launcher
(0x0000000000000000)
  7 0x0000000143c010de EntryPoint+0xfeeef6fd() in artix game launcher
(0x0000000000000000)
  8 0x0000000141451106 EntryPoint+0xfc73f725() in artix game launcher
(0x0000000000000000)
  9 0x000000014145ed06 EntryPoint+0xfc74d325() in artix game launcher
(0x0000000000000000)
...
  26 0x0000000144d11972 EntryPoint+0xffffff91() in artix game launcher
(0x000000000022fed0)
  27 0x000000007b62a009 BaseThreadInitThunk+0x8() in kernel32
(0x000000000022fed0)
  28 0x000000007bc57cc2 RtlUserThreadStart+0xc1() in ntdll (0x000000000022fed0)
0x000000014032bba0 EntryPoint+0xfb61a1c0 in artix game launcher: movq   
(%rcx),%rax
Modules:
Module    Address                    Debug info    Name (67 modules)
PE              230000-          359000    Deferred        comctl32
...
PE            7b000000-        7b0a6000    Deferred        kernelbase
PE            7b600000-        7b80b000    PDB             kernel32
PE            7bc00000-        7bc8a000    PDB             ntdll
PE           140000000-       1466a3000    Export          artix game launcher
PE           180000000-       180369000    Deferred        ffmpeg
PE        7fa03ec90000-    7fa03ec93000    Deferred        kerberos
...
Threads:
process  tid      prio (all id:s are in hex)
...
000000bc Artix Game Launcher.exe
    000000c0    0
...
    000001c0   -2
...
00000144 Artix Game Launcher.exe
    00000148    1
...
    00000214    1
00000164 Artix Game Launcher.exe
    00000168    0
...
    000001dc    0
00000180 (D) C:\Program Files\Artix Game Launcher\Artix Game Launcher.exe
    00000184    0 <==
...
    00000410    0
--- snip ---

There is nothing to see in trace logs hence I omit it here. While debugging I
remembered having seen this once with Steam client as well. It crashes in
internal Chromium font manager/framework code while trying to decode downloaded
WOFF (Web Open Font Format) fonts.

For the time being I provide a workaround here, that is telling CEF/Blink
browser to not use webfonts:

--- snip ---
$ pwd
/home/focht/.wine/drive_c/Program Files/Artix Game Launcher

$ wine ./Artix\ Game\ Launcher.exe --disable-remote-fonts
...
--- snip ---

This avoids the crash. Now the launcher just shows a black/blank main window.
This is bug 48618 ("Multiple applications show black client area on startup
(Wargaming.net Game Center, Electron based apps)('--disable-gpu' command line
parameter is a workaround)").

Henri's patch from https://bugs.winehq.org/show_bug.cgi?id=48618#c20 helps
here.

Alternatively you can work around without patching Wine using the command line
in two ways:

--- snip ---
$ WINEDLLOVERRIDES=libGLESv2.dll=d wine ./Artix\ Game\ Launcher.exe
--disable-remote-fonts
--- snip ---

or:

--- snip ---
$ wine ./Artix\ Game\ Launcher.exe --disable-remote-fonts --disable-gpu
--- snip ---

With that said, the launcher is fully usable and you can run games.

I'm refining the summary to make this bug about the crash in (statically
linked) CEF font manager / WOFF handling. It could be very well that other bugs
about the same issue already exist but alas these things are hard / next to
impossible to diagnose for the general populace.

$ sha1sum ArtixLauncher_win_x64.exe 
3026e262e376c47f737d07407bfb933729fe9078  ArtixLauncher_win_x64.exe

$ du -sh ArtixLauncher_win_x64.exe 
59M    ArtixLauncher_win_x64.exe

$ wine --version
wine-6.2-33-ga9c8196e97e

Regards

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.


More information about the wine-bugs mailing list