Skip to content

[Bug]: Battle.net does not launch after 67-5 upgrade. Fixed with 67-4 downgrade #4915

Closed

Description

@RadiantRainbow

Describe the bug

Battle.net fails to start after 67-5 upgrade. Also tested webview2 dependency reinstall which also fails to install and errors (logs provided)

Downgrading to 67-4 fixes the issue and battle.net launches.

❯ sudo flatpak update --commit=b40a62a47a5c391a56719f5a1eac119d21250f51118a82d2495017f378edc832 com.usebottles.bottles

Downgrade commit was from flatpak remote-info --log flathub com.usebottles.bottles

...
        Commit: b40a62a47a5c391a56719f5a1eac119d21250f51118a82d2495017f378edc832
       Subject: Merge pull request #560 from flathub/update-67-4 (ab194a53a873)
          Date: 2026-10-06 10:15:05 +0000
...

To Reproduce

  1. Upgrade bottles to 67-5
  2. Launch Battle.net in bottles
    • Originally used ge-proton11-11 runner. Same error if I switch to soda-11.0-10 so runner version isn't critical

Battle.net does not launch. I see what looks like an error in logs:

09:55:46 (INFO) Executing command: /usr/bin/gamemoderun /home/$USER/.var/app/com.usebottles.bottles/data/bottles/runners/ge-proton11-11/files/bin/wine start /wait /d 'C:\Program Files (x86)\Battle.net' 'C:\Program Files (x86)\Battle.net\Battle.net.exe'                                                                                                         
gamemodeauto:                                                                                                          
02d8:err:crypt:check_and_store_certs CERT_FIRST_USER_PROP_ID property absent for cert 00FADA20.                        
02d8:err:winediag:nodrv_CreateWindow Application tried to create a window, but no driver could be loaded.              
02d8:err:winediag:nodrv_CreateWindow L"The explorer process failed to start."                                          
02d8:err:mmdevapi:load_driver Unable to load UNIX functions: c0000135                                                  
0370:err:winediag:nodrv_CreateWindow Application tried to create a window, but no driver could be loaded.              
0370:err:winediag:nodrv_CreateWindow L"The explorer process failed to start."

From a fresh new bottle:

  1. New bottle
  2. Install battle.net
  3. Log in
  4. Reach battle.net home page fully logged in, should work as expected
  5. Close battle.net completely (force stop procs to kill Agent.exe)
  6. Relaunch battle.net

Fails to launch

Package

Flatpak from Flathub

Distribution

archlinux

Debugging Information

Official Package: true
Version: '67.5'
DE/WM: i3
Display:
    X.org: true
    X.org (port): :0
    Wayland: false
Graphics:
    vendors:
        amd:
            vendor: amd
            envs:
                DRI_PRIME: '1'
            icd: /usr/share/vulkan/icd.d/radeon_icd.x86_64.json:/usr/lib/x86_64-linux-gnu/GL/vulkan/icd.d/radeon_icd.x86_64.json:/usr/lib/i386-linux-gnu/GL/vulkan/icd.d/radeon_icd.i686.json
    prime:
        integrated: null
        discrete: null
    Vulkan: true
Kernel:
    Type: Linux
    Version: 7.2.11-arch1-1
Disk:
    Total: 33253404672
    Free: 33253236736
RAM:
    MemTotal: 61.9GiB
    MemAvailable: 55.6GiB
Bottles_envs: null

Troubleshooting Logs

Logs from bnet launch

09:55:33 (INFO) Executing command: /home/$USER/.var/app/com.usebottles.bottles/data/bottles/runners/ge-proton11-11/files/bin/wine wineboot -u /nogui 
ntsync: up and running.
WARNING: radv is not a conformant Vulkan implementation, testing use only.
WARNING: radv is not a conformant Vulkan implementation, testing use only.
info:  Game: Agent.exe
info:  DXVK: v3.1.1-55-gd30be2ba
info:  Build: x86 gcc 16.2.0
info:  Vulkan: Found vkGetInstanceProcAddr in winevulkan.dll @ 0x694cdf80
info:  Extension providers:
info:    Platform WSI
info:    OpenVR
info:  OpenVR: could not open registry key, status 2
info:  OpenVR: Failed to locate module
info:    OpenXR
info:  Enabled instance extensions:
info:    VK_EXT_swapchain_colorspace
info:    VK_KHR_get_surface_capabilities2
info:    VK_KHR_surface
info:    VK_KHR_surface_maintenance1
info:    VK_KHR_win32_surface
WARNING: radv is not a conformant Vulkan implementation, testing use only.
WARNING: radv is not a conformant Vulkan implementation, testing use only.
info:  Found device: AMD Radeon RX 9070 (RADV GFX1201) (radv 26.1.6)
info:  Found device: AMD Radeon(TM) Graphics (radv 26.1.6)
09:55:45 (INFO) Session started: id=1537 bottle=battlenet program=C:\Program Files (x86)\Battle.net\Battle.net.exe 
09:55:45 (INFO) Using Wine path converter -- --windows 
09:55:45 (INFO) Executing command: /home/$USER/.var/app/com.usebottles.bottles/data/bottles/runners/ge-proton11-11/files/bin/wine winepath --windows '/home/$USER/.var/app/com.usebottles.bottles/data/bottles/bottles/battlenet/drive_c/Program Files (x86)/Battle.net' 
09:55:46 (INFO) Using Wine Starter -- run 
09:55:46 (INFO) Using EasyAntiCheat runtime 
09:55:46 (INFO) Using BattlEye runtime 
09:55:46 (INFO) Executing command: /usr/bin/gamemoderun /home/$USER/.var/app/com.usebottles.bottles/data/bottles/runners/ge-proton11-11/files/bin/wine start /wait /d 'C:\Program Files (x86)\Battle.net' 'C:\Program Files (x86)\Battle.net\Battle.net.exe' 
gamemodeauto: 
02d8:err:crypt:check_and_store_certs CERT_FIRST_USER_PROP_ID property absent for cert 00FADA20.
02d8:err:winediag:nodrv_CreateWindow Application tried to create a window, but no driver could be loaded.
02d8:err:winediag:nodrv_CreateWindow L"The explorer process failed to start."
02d8:err:mmdevapi:load_driver Unable to load UNIX functions: c0000135
0370:err:winediag:nodrv_CreateWindow Application tried to create a window, but no driver could be loaded.
0370:err:winediag:nodrv_CreateWindow L"The explorer process failed to start."

Additional context

Also tested webview2 dependency reinstall (this usually fixes broken battle.net after a runner change)

I get webview2 failed to install with these logs:

09:57:27 (INFO) Executing command: /usr/bin/gamemoderun /home/$USER/.var/app/com.usebottles.bottles/data/bottles/runners/ge-proton11-11/files/bin/wine start /wait /unix /home/$USER/.var/app/com.usebottles.bottles/data/bottles/temp/MicrosoftEdgeWebView2RuntimeInstallerX64.exe /silent /install 
gamemodeauto: 
033c:err:module:hacks_init HACK: reporting LocalSystem account SID.
0344:err:module:hacks_init HACK: reporting LocalSystem account SID.
033c:err:combase:RoGetActivationFactory Failed to find library for L"Windows.Internal.System.Profile.RegionPolicyEvaluator"
034c:err:module:hacks_init HACK: reporting LocalSystem account SID.
033c:err:winediag:nodrv_CreateWindow Application tried to create a window, but no driver could be loaded.
033c:err:winediag:nodrv_CreateWindow L"The explorer process failed to start."
0354:err:module:hacks_init HACK: reporting LocalSystem account SID.
034c:err:combase:RoGetActivationFactory Failed to find library for L"Windows.System.Diagnostics.Telemetry.PlatformTelemetryClient"
0354:err:combase:RoGetActivationFactory Failed to find library for L"Windows.System.Diagnostics.Telemetry.PlatformTelemetryClient"
0358:err:crypt:check_and_store_certs CERT_FIRST_USER_PROP_ID property absent for cert 00C50540.
09:57:38 (INFO) Using Wine debug tool -- get_processes 
09:57:38 (INFO) Executing command: /home/$USER/.var/app/com.usebottles.bottles/data/bottles/runners/ge-proton11-11/files/bin/wine winedbg --command "info proc" 
09:57:38 (ERROR) Command exited with status 8. 

Original issue that was auto closed: #4914

Activity

  1. changed the title [-][Bug]: Battle.net does not launch after 67.5 upgrade. Fixed with 67-4 downgrade[/-] [+][Bug]: Battle.net does not launch after 67-5 upgrade. Fixed with 67-4 downgrade[/+] on Oct 28, 2026
  2. RadiantRainbow commented on Oct 28, 2026

    @RadiantRainbow
    Author
  3. RadiantRainbow commented on Oct 28, 2026

    @RadiantRainbow
    Author
  4. RadiantRainbow commented on Oct 28, 2026

    @RadiantRainbow
    Author
  5. RadiantRainbow commented on Oct 28, 2026

    @RadiantRainbow
    Author

    Actually closed too soon. Sorry about the confusion and noise in ticket, clearly learning on the fly how to test more precisely.

    Updates:

    • More precise repro steps
    • Actual bisect results with launch failures/success per step!

    Repro steps on 67-5

    On bottles 67-5, battlenet installs and runs well on first launch. But after close and restart it starts failing like my original ticket report. If I downgrade to 67-4 it will successfully launch.

    So the full repro steps from scratch should be:

    1. New bottle
    2. Install battle.net
    3. Log in
    4. Reach battle.net home page fully logged in, should work as expected
    5. Close battle.net completely (force stop procs to kill Agent.exe)
    6. Relaunch battle.net

    Wont launch

    Then try downgrade:

    1. Close bottles
    2. Downgrade with: sudo flatpak update --commit=b40a62a47a5c391a56719f5a1eac119d21250f51118a82d2495017f378edc832 com.usebottles.bottles
    3. Relaunch bottles
    4. Relaunch battle.net

    Launches

    Bisect attempt 2

    First build the known good build @ 4a629be (67-4 release)

    1. git checkout 4a629be
    2. Build and run "good" version flatpak run org.flatpak.Builder --install --user --install-deps-from=flathub --default-branch=master --force-clean build-dir build-aux/com.usebottles.bottles.Devel.json && flatpak run com.usebottles.bottles.Devel
    3. Install battle.net
    4. Log in
    5. Reach battle.net home page fully logged in, should work as expected
    6. Close completely (force stop procs to kill Agent.exe)
    7. git checkout main

    Now start bisect steps

    git bisect start                                                                                                       
    git bisect bad                                                                                                         
    git bisect good 4a629be
    

    Each step:

    1. flatpak run org.flatpak.Builder --install --user --install-deps-from=flathub --default-branch=master --force-clean build-dir build-aux/com.usebottles.bottles.Devel.json && flatpak run com.usebottles.bottles.Devel
    2. Try to run battle.net
    3. git bisect good if it launches, else git bisect bad

    When failing to launch the term log output will have something like:

    0354:err:winediag:nodrv_CreateWindow Application tried to create a window, but no driver could be loaded.
    0354:err:winediag:nodrv_CreateWindow L"The explorer process failed to start."
    

    Bisect result

    20199c2c91a70a3fa4539d1e9bc1cac5e43e123a is the first 'bad' commit
    commit 20199c2c91a70a3fa4539d1e9bc1cac5e43e123a
    Author: mirkobrombin <brombin94@gmail.com>
    Date:   Mon Oct 26 01:10:44 2026 +0000
    
        fix: refresh manually installed fonts before launch
    
     bottles/backend/wine/executor.py            |  6 +++---
     bottles/backend/wine/wineboot.py            |  2 +-
     bottles/tests/backend/wine/test_executor.py | 49 +++++++++++++++++++++++++++++++++++++++++++++++++
     3 files changed, 53 insertions(+), 4 deletions(-)
    

    A final sanity check there:

    1. git checkout 2fc3a136 the "good" commit before 20199c2

    2. flatpak run org.flatpak.Builder --install --user --install-deps-from=flathub --default-branch=master --force-clean build-dir build-aux/com.usebottles.bottles.Devel.json && flatpak run com.usebottles.bottles.Devel

    3. Launch battle.net, verify it launches correctly ☑️

    4. Close everything

    5. git checkout 2fc3a136 the "good" commit before 20199c2

    6. flatpak run org.flatpak.Builder --install --user --install-deps-from=flathub --default-branch=master --force-clean build-dir build-aux/com.usebottles.bottles.Devel.json && flatpak run com.usebottles.bottles.Devel

    7. Launch battle.net, verify it fails ❌

    So confirmed that 20199c2 is the culprit

  6. OptimoSupreme commented on Oct 29, 2026

    @OptimoSupreme

    Same regression here on 67.5 (Flathub), existing Battle.net bottle, soda-11.0-10. Different symptom though: no window at all, and Wine logs err:virtual:virtual_setup_exception stack overflow in Battle.net.exe's main thread a few seconds after launch.

    Root cause on my side: the wineboot -u that the stamp check now runs rewrote HKLM\Software\Microsoft\Windows NT\CurrentVersion\Fonts. The runner's own fonts (tahoma.ttf, tahomabd.ttf, marlett.ttf, symbol.ttf, webdings.ttf, wingdings.ttf) went from absolute paths into runners/soda-11.0-10/share/wine/fonts to bare filenames, which Wine resolves against C:\windows\Fonts, where none of them exist. DirectWrite uses Tahoma as its Latin fallback family; with Tahoma gone from the collection, CEF's font fallback recurses (WINEDEBUG=+dwrite shows an endless FindFamilyName "Tahoma" / "sans" loop) until the 1 MB stack overflows.

    Workaround without reinstalling: copy those six files from <runner>/share/wine/fonts into the bottle's drive_c/windows/Fonts (wingding.ttf as wingdings.ttf). Battle.net launches again, and the next wineboot -u Bottles triggers is harmless once the files exist.

    Suggestion: when .fonts_stamp is missing on an existing bottle, write the stamp instead of running wineboot -u, and only refresh when the Fonts directory mtime later changes. The bare-filename registration itself looks like Soda/Proton wineboot behaviour worth a separate look.

  7. OptimoSupreme commented on Nov 1, 2026

    @OptimoSupreme

    Correction to my comment above: the wineboot -u from the stamp check is not by itself what breaks the font registration.

    On a second machine I created a fresh Battle.net bottle today on 67.5 with soda-11.0-10. The stamp check ran wineboot -u on it twice (after the Arial and Times dependencies touched the Fonts directory), and Tahoma and the other runner fonts are still registered by absolute path. The six files are not in drive_c/windows/Fonts there either, and Battle.net launches and relaunches fine. That matches RadiantRainbow's finding that a fresh install on 67.5 works.

    So the rewrite to bare filenames depends on the bottle's history. The broken bottle predates 67.5 and had been moved between runners before ending up on soda-11.0-10. My guess is that an earlier runner left font entries or symlinks in the prefix that no longer resolve, and wineboot -u under the new runner then registers those names bare. I have not confirmed that yet.

    In short: the stamp check triggers it, but the fault is probably in how an existing bottle migrates, not in running wineboot -u as such. Please don't spend time on the stamp logic on my account.

  8. n36ul4 commented on Nov 1, 2026

    @n36ul4

    Actually closed too soon. Sorry about the confusion and noise in ticket, clearly learning on the fly how to test more precisely.

    Updates:

    * More precise repro steps
    
    * Actual bisect results with launch failures/success per step!
    

    Repro steps on 67-5

    On bottles 67-5, battlenet installs and runs well on first launch. But after close and restart it starts failing like my original ticket report. If I downgrade to 67-4 it will successfully launch.

    So the full repro steps from scratch should be:

    1. New bottle
    
    2. Install battle.net
    
    3. Log in
    
    4. Reach battle.net home page fully logged in, should work as expected
    
    5. Close battle.net completely (force stop procs to kill `Agent.exe`)
    
    6. Relaunch battle.net
    

    Wont launch

    Then try downgrade:

    1. Close bottles
    
    2. Downgrade with: `sudo flatpak update --commit=b40a62a47a5c391a56719f5a1eac119d21250f51118a82d2495017f378edc832 com.usebottles.bottles`
    
    3. Relaunch bottles
    
    4. Relaunch battle.net
    

    Launches

    Bisect attempt 2

    First build the known good build @ 4a629be (67-4 release)

    1. `git checkout 4a629be`
    
    2. Build and run "good" version `flatpak run org.flatpak.Builder --install --user --install-deps-from=flathub --default-branch=master --force-clean build-dir build-aux/com.usebottles.bottles.Devel.json && flatpak run com.usebottles.bottles.Devel`
    
    3. Install battle.net
    
    4. Log in
    
    5. Reach battle.net home page fully logged in, should work as expected
    
    6. Close completely (force stop procs to kill `Agent.exe`)
    
    7. `git checkout main`
    

    Now start bisect steps

    git bisect start                                                                                                       
    git bisect bad                                                                                                         
    git bisect good 4a629be
    

    Each step:

    1. `flatpak run org.flatpak.Builder --install --user --install-deps-from=flathub --default-branch=master --force-clean build-dir build-aux/com.usebottles.bottles.Devel.json && flatpak run com.usebottles.bottles.Devel`
    
    2. Try to run battle.net
    
    3. `git bisect good` if it launches, else `git bisect bad`
    

    When failing to launch the term log output will have something like:

    0354:err:winediag:nodrv_CreateWindow Application tried to create a window, but no driver could be loaded.
    0354:err:winediag:nodrv_CreateWindow L"The explorer process failed to start."
    

    Bisect result

    20199c2c91a70a3fa4539d1e9bc1cac5e43e123a is the first 'bad' commit
    commit 20199c2c91a70a3fa4539d1e9bc1cac5e43e123a
    Author: mirkobrombin <brombin94@gmail.com>
    Date:   Mon Oct 26 01:10:44 2026 +0000
    
        fix: refresh manually installed fonts before launch
    
     bottles/backend/wine/executor.py            |  6 +++---
     bottles/backend/wine/wineboot.py            |  2 +-
     bottles/tests/backend/wine/test_executor.py | 49 +++++++++++++++++++++++++++++++++++++++++++++++++
     3 files changed, 53 insertions(+), 4 deletions(-)
    

    A final sanity check there:

    1. `git checkout 2fc3a136` the "good" commit before [20199c2](https://github.com/bottlesdevs/Bottles/commit/20199c2c91a70a3fa4539d1e9bc1cac5e43e123a)
    
    2. `flatpak run org.flatpak.Builder --install --user --install-deps-from=flathub --default-branch=master --force-clean build-dir build-aux/com.usebottles.bottles.Devel.json && flatpak run com.usebottles.bottles.Devel`
    
    3. Launch battle.net, verify it launches correctly ☑️
    
    4. Close everything
    
    5. `git checkout 2fc3a136` the "good" commit before [20199c2](https://github.com/bottlesdevs/Bottles/commit/20199c2c91a70a3fa4539d1e9bc1cac5e43e123a)
    
    6. `flatpak run org.flatpak.Builder --install --user --install-deps-from=flathub --default-branch=master --force-clean build-dir build-aux/com.usebottles.bottles.Devel.json && flatpak run com.usebottles.bottles.Devel`
    
    7. Launch battle.net, verify it fails ❌
    

    So confirmed that 20199c2 is the culprit

    Exactly same problem here, as @RadiantRainbow described!

  9. BlueberryDuck commented on Nov 4, 2026

    @BlueberryDuck

    Root cause on 67.5 with a GE-Proton runner (Arch package, GE-Proton11-12):

    1. WineBoot.update() goes through send_status(), which sets DISPLAY=:3.0. The explorer.exe /desktop that this wineboot -u starts cannot load winex11, and the program launched right after joins that wineserver: nodrv_CreateWindow ... The explorer process failed to start. Wine then falls back to winewayland for the program's windows, so a program that does not work under winewayland fails to start.
    2. With Proton runners the refresh runs on every launch: SteamUtils.sync_proton_fonts() unlinks and re-creates the font symlinks each time a command is built, so the drive_c/windows/Fonts mtime is always newer than .fonts_stamp. This explains "first launch works, every relaunch fails".

    Confirmed with /proc/<pid>/environ of the bottle's services.exe (DISPLAY=:3.0) and by launching the same exe with the bottle env and the real DISPLAY (no failure).

    Workaround: echo 4102444800.0 > <bottle>/.fonts_stamp skips the refresh. The program then launches every time.

  10. n36ul4 commented on Nov 4, 2026

    @n36ul4

    I can confirm @BlueberryDuck workaround worked for me!

  11. mirkobrombin commented on Nov 4, 2026

    @mirkobrombin
    Member

    The latest cpak keeps the session display during the font refresh and no longer recreates unchanged Proton font links: 4a3611d

    @RadiantRainbow @BlueberryDuck please try closing Battle.net completely and opening it again.

  12. RadiantRainbow commented on Nov 4, 2026

    @RadiantRainbow
    Author

    thanks @mirkobrombin

    just finished testing with same testing procedure (new bottle, install, launch, login, close, launch, ...) on 492489e (latest head) and 4a3611d

    subsequent launches working perfectly, looks fixed to me!

  13. mirkobrombin commented on Nov 4, 2026

    @mirkobrombin
    Member

    Thanks @RadiantRainbow for testing both commits and the repeated launches. Closing this one.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions