http://bugs.winehq.org/show_bug.cgi?id=58724
Bug ID: 58724 Summary: Regression: heroes of the storm doesn't start Product: Wine Version: 10.15 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: d3d Assignee: wine-bugs@winehq.org Reporter: idarktemplar@mail.ru Distribution: ---
Created attachment 79330 --> http://bugs.winehq.org/attachment.cgi?id=79330 0001-Fix-battle.net.patch
Heroes of the storm crashes on start with error message "g_gfxErrorAPIError". It started happening with wine 10.15.
Game URL: https://heroesofthestorm.blizzard.com/en-us/
Battle.net is needed for game. To run a battle.net application an attached patch is used.
OS: Gentoo amd64
Videocard info:
OpenGL vendor string: AMD OpenGL renderer string: AMD Radeon RX 7900 XTX (radeonsi, navi31, LLVM 20.1.8, DRM 3.61, 6.12.41-gentoo-v68) OpenGL core profile version string: 4.6 (Core Profile) Mesa 25.2.3 OpenGL core profile shading language version string: 4.60
dxvk 2.7.1 is used: https://github.com/doitsujin/dxvk/ vkd3d-proton 2.14.1 is used: https://github.com/HansKristian-Work/vkd3d-proton/ I've tried running wine without dxvk and vkd3d-proton and issue didn't go away.
I did git bisect and got following result:
f7619fe4875c0082c410570051c1770114c62b96 is the first bad commit commit f7619fe4875c0082c410570051c1770114c62b96 Author: Connor McAdams cmcadams@codeweavers.com Date: Tue Aug 12 09:52:40 2025 -0400
d3dx11: Implement D3DX11GetImageInfoFromMemory() using shared code.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50210 Signed-off-by: Connor McAdams cmcadams@codeweavers.com
dlls/d3dx11_43/Makefile.in | 5 ++++- dlls/d3dx11_43/d3dx11_43_main.c | 9 -------- dlls/d3dx11_43/dxhelpers.h | 21 +++++++++++++++++ dlls/d3dx11_43/tests/d3dx11.c | 21 ++++++----------- dlls/d3dx11_43/texture.c | 243 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 5 files changed, 275 insertions(+), 24 deletions(-) create mode 100644 dlls/d3dx11_43/dxhelpers.h
$ git bisect log # bad: [72dc2afb1a78f88cd930d61a20498838a3bea271] Release 10.15. # good: [b073859675060c9211fcbccfd90e4e87520dc2c2] Release 10.0. git bisect start 'wine-10.15' 'wine-10.0' # good: [80278c34bd7d93dcfcb59c321bfb7f271cf1eda5] dbghelp: Add method to enumerate symbols. git bisect good 80278c34bd7d93dcfcb59c321bfb7f271cf1eda5 # good: [e374980d0bfc7413e0cc1da5fcca5e9c8c851281] sapi/stream: Remove the FIXME message for unknown ISpStream interfaces. git bisect good e374980d0bfc7413e0cc1da5fcca5e9c8c851281 # good: [618903c8006945e0949e5630857d495f8f81e183] cryptxml: Implement CryptXmlVerifySignature() stub. git bisect good 618903c8006945e0949e5630857d495f8f81e183 # good: [e672573bd7aa734cff7b8a44a78504ad77bf5d9c] cmd/tests: Add more tests about ERASE builtin command. git bisect good e672573bd7aa734cff7b8a44a78504ad77bf5d9c # good: [665229874b6c46247f7fb7b639e35a6b40b6fef1] win32u: Strip unsupported structs from vkCreateImage chain. git bisect good 665229874b6c46247f7fb7b639e35a6b40b6fef1 # good: [c20abdb856139f156ceab0afbb8454e0ad79f0a4] gdiplus: Manually blend to white background if the device doesn't support alpha blending. git bisect good c20abdb856139f156ceab0afbb8454e0ad79f0a4 # good: [9674f905fba249845ca282dee1c7218e57b4d074] windows.media.mediacontrol: Stub ISystemMediaTransportControlsDisplayUpdater::put/get_Thumbnail(). git bisect good 9674f905fba249845ca282dee1c7218e57b4d074 # bad: [93dbe66d6ef7e5f952885f1f79d2e90752482804] include: Use the client pointer in debugstr_opengl_drawable. git bisect bad 93dbe66d6ef7e5f952885f1f79d2e90752482804 # good: [3b41f3fba1014942598af49edd796dbb72bac68a] d3dx11/tests: Add a helper function for checking image info structure values. git bisect good 3b41f3fba1014942598af49edd796dbb72bac68a # bad: [d556ee879077ef65141ea9e910574f274ee86e0e] preloader: Make thread_ldt reference position independent. git bisect bad d556ee879077ef65141ea9e910574f274ee86e0e # bad: [f7619fe4875c0082c410570051c1770114c62b96] d3dx11: Implement D3DX11GetImageInfoFromMemory() using shared code. git bisect bad f7619fe4875c0082c410570051c1770114c62b96 # good: [d98935a7dab6338e57abefa58e12ac252eec6023] d3dx11/tests: Import more image info tests from d3dx10. git bisect good d98935a7dab6338e57abefa58e12ac252eec6023 # first bad commit: [f7619fe4875c0082c410570051c1770114c62b96] d3dx11: Implement D3DX11GetImageInfoFromMemory() using shared code.
http://bugs.winehq.org/show_bug.cgi?id=58724
i.Dark_Templar idarktemplar@mail.ru changed:
What |Removed |Added ---------------------------------------------------------------------------- Distribution|--- |Gentoo URL| |https://heroesofthestorm.bl | |izzard.com/en-us/ Regression SHA1| |f7619fe4875c0082c410570051c | |1770114c62b96 Keywords| |regression
http://bugs.winehq.org/show_bug.cgi?id=58724
--- Comment #1 from i.Dark_Templar idarktemplar@mail.ru --- wine build commands used for bisect:
mkdir build32 build64 cd build64 ../configure --with-mingw --enable-win64 --prefix=/tmp/wineinstall cd ../build32 ../configure --with-mingw --with-wine64=../build64 --prefix=/tmp/wineinstall cd ../build64 make $JOBS cd ../build32 make $JOBS make $JOBS install cd ../build64 make $JOBS install
http://bugs.winehq.org/show_bug.cgi?id=58724
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |cmcadams@codeweavers.com
http://bugs.winehq.org/show_bug.cgi?id=58724
--- Comment #2 from Connor McAdams cmcadams@codeweavers.com --- Could you get me a wine log of this failure with the `+d3dx` channel?
http://bugs.winehq.org/show_bug.cgi?id=58724
--- Comment #3 from i.Dark_Templar idarktemplar@mail.ru --- Created attachment 79346 --> http://bugs.winehq.org/attachment.cgi?id=79346 hots.log.bz2
compressed output of 'WINEDEBUG=+d3dx wine-vanilla-10.15 "Battle.net Launcher.exe"' with launch of Heroes of the Storm.
It looks like after successful call to D3DX11GetImageInfoFromMemory it tries to call D3DX11CreateTextureFromMemory and fails.
With earlier version of wine, 10.0, it calls D3DX11GetImageInfoFromMemory, gets error and I assume uses something else instead of D3DX11CreateTextureFromMemory.