[Bug 58811] New: Steam: Unable to display the intended GUI windows due to steamwebhelper being unresponsive.
http://bugs.winehq.org/show_bug.cgi?id=58811 Bug ID: 58811 Summary: Steam: Unable to display the intended GUI windows due to steamwebhelper being unresponsive. Product: Wine Version: 10.16 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: dwrite Assignee: wine-bugs(a)winehq.org Reporter: chiitoo(a)gentoo.org Regression SHA1: 2a2cc34db71a86899b69bf3ee1da52793c342019 Distribution: Gentoo Created attachment 79466 --> http://bugs.winehq.org/attachment.cgi?id=79466 terminal After 2a2cc34db71 [1], Steam appears to launch, showing its notification area icon, but no window will appear. After a while from clicking said icon, the "Steamwebhelper is not responding" window [2] will appear, with a few different options to restart things with, of which none do any better. I believe the src\vgui2\vgui_surfacelib\Win32Font.cpp (963) : Couldn't get string length line shows up only when this problem can be seen, which could be a sort of a hint at least. Building before the mentioned commit, or reverting it, and efce37afd70 due to conflicts, on current 'git master' will make it work again. Hacking on it a bit, removing the 'wcsupr(refkey->name);' line also makes it work, though maybe that is obvious in this case, and might more or less nullify the point of the uppercasing intended. (Did not try a fresh prefix and clean install of Steam yet due to the cumbersome log-in process, but hopefully that is not necessary here.) Last tested at 'wine-10.17'. Thank you! 1. https://gitlab.winehq.org/wine/wine/-/commit/2a2cc34db71a86899b69bf3ee1da527... 2. https://help.steampowered.com/en/faqs/view/6C3E-9504-CC20-AF49 -- 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.
http://bugs.winehq.org/show_bug.cgi?id=58811 Chiitoo <chiitoo(a)gentoo.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #79466|terminal |terminal output from a bad description| |run -- 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.
http://bugs.winehq.org/show_bug.cgi?id=58811 Chiitoo <chiitoo(a)gentoo.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download, regression URL| |https://cdn.fastly.steamsta | |tic.com/client/installer/St | |eamSetup.exe -- 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.
http://bugs.winehq.org/show_bug.cgi?id=58811 --- Comment #1 from Zeb Figura <z.figura12(a)gmail.com> --- *** Bug 58808 has been marked as a duplicate of this bug. *** -- 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.
http://bugs.winehq.org/show_bug.cgi?id=58811 --- Comment #2 from Zeb Figura <z.figura12(a)gmail.com> --- *** Bug 58809 has been marked as a duplicate of this bug. *** -- 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.
http://bugs.winehq.org/show_bug.cgi?id=58811 --- Comment #3 from Zeb Figura <z.figura12(a)gmail.com> --- *** Bug 58810 has been marked as a duplicate of this bug. *** -- 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.
http://bugs.winehq.org/show_bug.cgi?id=58811 --- Comment #4 from Chiitoo <chiitoo(a)gentoo.org> --- Whoa, I did notice the bug report go out before I was ready, so maybe pressed 'return' accidentally while adding the attachment... and perhaps it was down just long enough to manage creating all those... Sorry about that! -- 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.
http://bugs.winehq.org/show_bug.cgi?id=58811 random-nick(a)mail.com changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |random-nick(a)mail.com --- Comment #5 from random-nick(a)mail.com --- I can reproduce this bug and have bisected it and got the same regression commit and it shows up on the latest release (10.18) and the master (0fc31f4) too. I'm not sure if this bug appeared as soon as 10.16 came out or if it only appeared after a Steam update. You do not have to log into Steam to reproduce but if you're not logged in the system tray icon doesn't appear (intended behaviour) so you can't tell if the window was supposed to appear or if the updater is still working. To reproduce this bug in a clean prefix you just need to install and run Steam and if the log in window appears after it is done updating then the bug is not present but if does not appear it is present and you will get those "Couldn't get string length" lines in C:\Program Files (x86)\Steam\logs\console_log.txt or on the terminal if you run steam.exe from the terminal. When the log in window does show up in a clean prefix (when using a build before this regression), it won't have any text but this is a separate issue that can be worked around by installing corefonts. Installing or not installing corefonts doesn't seem to affect this bug. -- 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.
http://bugs.winehq.org/show_bug.cgi?id=58811 Hans Leidekker <hans(a)meelstraat.net> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |info(a)maduranma.com --- Comment #6 from Hans Leidekker <hans(a)meelstraat.net> --- *** Bug 58968 has been marked as a duplicate of this bug. *** -- 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.
http://bugs.winehq.org/show_bug.cgi?id=58811 --- Comment #7 from Martín Durán <info(a)maduranma.com> --- Just so it does not get lost, mr. Rafał Mużyło answered in the closed duplicate #58968 this: (In reply to Rafał Mużyło from comment #4)
We might be looking at something close to a compiler bug here, due to a type mismatch.
The way wcsupr is implemented in msvcrt is by calling _wcsupr_s_l with '-1' as size, but the type for size is size_t (unsigned). _wcsupr_s_l doesn't really account for such values...
Just to verify my idea is going in the right direction, try changing that implementation in _wcsupr_l to - let's say '_wcsupr_s_l( str, wcslen(str)+1, locale);' (likely won't be quite correct for NULL str, but otherwise OK...well, unless I messed something up, so caution advised).
Just pasting here as I'd probably not be read as closed. -- 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.
http://bugs.winehq.org/show_bug.cgi?id=58811 --- Comment #8 from Chiitoo <chiitoo(a)gentoo.org> --- (In reply to Martín Durán from comment #7)
Just so it does not get lost, mr. Rafał Mużyło answered in the closed duplicate #58968 this:
(In reply to Rafał Mużyło from comment #4)
We might be looking at something close to a compiler bug here, due to a type mismatch.
The way wcsupr is implemented in msvcrt is by calling _wcsupr_s_l with '-1' as size, but the type for size is size_t (unsigned). _wcsupr_s_l doesn't really account for such values...
Just to verify my idea is going in the right direction, try changing that implementation in _wcsupr_l to - let's say '_wcsupr_s_l( str, wcslen(str)+1, locale);' (likely won't be quite correct for NULL str, but otherwise OK...well, unless I messed something up, so caution advised).
Just pasting here as I'd probably not be read as closed.
Thanks, I did see it, and did mean to test it, but forgot. I did it now, that is, in 'dlls/msvcrt/wcs.c': @@ -412,7 +412,7 @@ */ wchar_t* CDECL _wcsupr_l( wchar_t *str, _locale_t locale ) { - _wcsupr_s_l( str, -1, locale); + _wcsupr_s_l( str, wcslen(str)+1, locale); return str; } As far as I can tell so far though, it didn't change the behaviour here. Printing 'str' and 'locale' I did notice the latter being '(null)', though that happens at wine-10.0 as well. The former is just 'H' mostly currently while at 10.0 it switches to 'R' at around the part current builds hang. -- 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.
http://bugs.winehq.org/show_bug.cgi?id=58811 --- Comment #9 from Nikolay Sivov <bunglehead(a)gmail.com> --- I'm afraid I'm unable to reproduce. What I tried, in that order: 1. clean prefix, installing Steam, logging in; 2. preinstalled steam, reverted dwrite change, Steam still starts fine; 3. clean prefix, reverted dwrite change, installed Steam, logged in; 4. preinstalled steam, reverted change back to use wcsupr, Steam still starts. Are you able to reproduce with clean prefix? Also a +dwrite log could be useful. P.S. the change itself is correct I think, it's important to have file using same path to have matching keys. -- 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.
http://bugs.winehq.org/show_bug.cgi?id=58811 --- Comment #10 from Martín Durán <info(a)maduranma.com> --- (In reply to Nikolay Sivov from comment #9)
I'm afraid I'm unable to reproduce.
What I tried, in that order:
1. clean prefix, installing Steam, logging in; 2. preinstalled steam, reverted dwrite change, Steam still starts fine; 3. clean prefix, reverted dwrite change, installed Steam, logged in; 4. preinstalled steam, reverted change back to use wcsupr, Steam still starts.
Are you able to reproduce with clean prefix? Also a +dwrite log could be useful.
P.S. the change itself is correct I think, it's important to have file using same path to have matching keys.
You could try with Fusion360, it gets stuck "Loading modules" on startup. https://github.com/cryinkfly/Autodesk-Fusion-360-for-Linux This repo is an installation script that will automatically install it for you if you wanna try it. -- 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.
http://bugs.winehq.org/show_bug.cgi?id=58811 --- Comment #11 from Nikolay Sivov <bunglehead(a)gmail.com> --- (In reply to Martín Durán from comment #10)
(In reply to Nikolay Sivov from comment #9)
I'm afraid I'm unable to reproduce.
What I tried, in that order:
1. clean prefix, installing Steam, logging in; 2. preinstalled steam, reverted dwrite change, Steam still starts fine; 3. clean prefix, reverted dwrite change, installed Steam, logged in; 4. preinstalled steam, reverted change back to use wcsupr, Steam still starts.
Are you able to reproduce with clean prefix? Also a +dwrite log could be useful.
P.S. the change itself is correct I think, it's important to have file using same path to have matching keys.
You could try with Fusion360, it gets stuck "Loading modules" on startup.
https://github.com/cryinkfly/Autodesk-Fusion-360-for-Linux
This repo is an installation script that will automatically install it for you if you wanna try it.
Could you retest Fusion360 in a clean prefix, and attach same +dwrite log if it doesn't help? -- 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.
http://bugs.winehq.org/show_bug.cgi?id=58811 --- Comment #12 from Martín Durán <info(a)maduranma.com> --- Created attachment 79899 --> http://bugs.winehq.org/attachment.cgi?id=79899 Fusion360 +dwrite log -- 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.
http://bugs.winehq.org/show_bug.cgi?id=58811 --- Comment #13 from Martín Durán <info(a)maduranma.com> --- (In reply to Nikolay Sivov from comment #11)
(In reply to Martín Durán from comment #10)
(In reply to Nikolay Sivov from comment #9)
I'm afraid I'm unable to reproduce.
What I tried, in that order:
1. clean prefix, installing Steam, logging in; 2. preinstalled steam, reverted dwrite change, Steam still starts fine; 3. clean prefix, reverted dwrite change, installed Steam, logged in; 4. preinstalled steam, reverted change back to use wcsupr, Steam still starts.
Are you able to reproduce with clean prefix? Also a +dwrite log could be useful.
P.S. the change itself is correct I think, it's important to have file using same path to have matching keys.
You could try with Fusion360, it gets stuck "Loading modules" on startup.
https://github.com/cryinkfly/Autodesk-Fusion-360-for-Linux
This repo is an installation script that will automatically install it for you if you wanna try it.
Could you retest Fusion360 in a clean prefix, and attach same +dwrite log if it doesn't help?
Done, I had to zip it as it was 38MB. The latest lines: 0024:trace:dwrite:localizedstrings_GetCount 00007F7D3E6E2A30. 0024:trace:dwrite:localizedstrings_GetString 00007F7D3E6E2A30, 0, 00007FFFFE102AE0, 255. 0024:trace:dwrite:localizedstrings_GetCount 00007F7D3E6E2AC0. 0024:trace:dwrite:localizedstrings_GetString 00007F7D3E6E2AC0, 0, 00007FFFFE102AE0, 255. 0024:trace:dwrite:localizedstrings_GetCount 00007F7D3E6E2B50. 0024:trace:dwrite:localizedstrings_GetString 00007F7D3E6E2B50, 0, 00007FFFFE102AE0, 255. 0024:trace:dwrite:dwritefactory_CreateNumberSubstitution 00007F7D696C34F0, 2, L"es-ES", 1, 00007FFFFE102CD0. 0024:trace:dwrite:fontfallback_MapCharacters 00007F7D8E402F30, 00007F7C88FB4520, 0, 1, 00007F7D9391BC70, L"Tahoma", 400, 0, 5, 00007FFFFE102D14, 00007FFFFE102CC0, 00007FFFFE102D10. 0024:trace:dwrite:dwritefontcollection_FindFamilyName 00007F7D9391BC70, L"Tahoma", 00007FFFFE102AEC, 00007FFFFE102AE8. wine: failed to load L"\\??\\C:\\windows\\syswow64\\ntdll.dll" error c0000135 (the last line was not present until I stopped execution, but it is also present on the beggining of the log). -- 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.
http://bugs.winehq.org/show_bug.cgi?id=58811 --- Comment #14 from Nikolay Sivov <bunglehead(a)gmail.com> --- Thank you, could you attach another log please with +dwrite,+dwrite_file,+file ? -- 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.
http://bugs.winehq.org/show_bug.cgi?id=58811 --- Comment #15 from Martín Durán <info(a)maduranma.com> --- Created attachment 79902 --> http://bugs.winehq.org/attachment.cgi?id=79902 Fuson360 log +dwrite,+dwrite_file,+file -- 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.
http://bugs.winehq.org/show_bug.cgi?id=58811 --- Comment #16 from Martín Durán <info(a)maduranma.com> --- (In reply to Nikolay Sivov from comment #14)
Thank you, could you attach another log please with +dwrite,+dwrite_file,+file ?
Yep, I compressed it with 7z because it's ~500MB, I hope it's not a problem. -- 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.
http://bugs.winehq.org/show_bug.cgi?id=58811 --- Comment #17 from Nikolay Sivov <bunglehead(a)gmail.com> --- Great, thank you. That's what I suspected, I think: --- 149493 0024:trace:dwrite:dwritefontsetbuilder2_AddFontFile 00007F15AB395220, L"\\??\\unix\\home\\maduranma\\Projects\\wine\\wine-git\\build64\\fonts\\tahomabd.ttf". ... 149500 0024:trace:dwrite:localfontfileloader_CreateStreamFromKey 00006FFFF5F82040, 00007F1586F8A1E0, 156, 00007FFFFE1FDE18. 149501 0024:trace:file:CreateFileW L"\\??\\UNIX\\HOME\\MADURANMA\\PROJECTS\\WINE\\WINE-GIT\\BUILD64\\FONTS\\TAHOMABD.TTF" GENERIC_READ FILE_SHARE_READ FILE_SHARE_WRITE creation 3 attributes 0x80 ... 149506 0024:warn:file:CreateFileW Unable to create file L"\\??\\UNIX\\HOME\\MADURANMA\\PROJECTS\\WINE\\WINE-GIT\\BUILD64\\FONTS\\TAHOMABD.TTF" (status c0000034) 149507 0024:trace:file:CreateFileW returning FFFFFFFFFFFFFFFF --- What most likely happens is that you don't have Z: drive, which is mapped by default to the system fs root /. When you don't have this mapping, font file paths in registry will use "\??\unix\" prefix to denote plain unix paths. My guess is that such paths are case-sensitive. I'll have to check, but the fix would be to disable path manipulation in case of \??\unix\ paths. -- 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.
http://bugs.winehq.org/show_bug.cgi?id=58811 --- Comment #18 from Nikolay Sivov <bunglehead(a)gmail.com> --- Created attachment 79905 --> http://bugs.winehq.org/attachment.cgi?id=79905 patch Could someone try this patch please? -- 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.
http://bugs.winehq.org/show_bug.cgi?id=58811 --- Comment #19 from Martín Durán <info(a)maduranma.com> --- (In reply to Nikolay Sivov from comment #18)
Created attachment 79905 [details] patch
Could someone try this patch please?
I've tried, it works fine now :) -- 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.
http://bugs.winehq.org/show_bug.cgi?id=58811 --- Comment #20 from Nikolay Sivov <bunglehead(a)gmail.com> --- Thanks, just sent it in https://gitlab.winehq.org/wine/wine/-/merge_requests/9725. -- 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.
http://bugs.winehq.org/show_bug.cgi?id=58811 Nikolay Sivov <bunglehead@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |d60f8286056559233e992c4084f | |31990723849b6 Resolution|--- |FIXED Status|UNCONFIRMED |RESOLVED --- Comment #21 from Nikolay Sivov <bunglehead@gmail.com> --- Marking fixed, d60f8286056559233e992c4084f31990723849b6. Thanks for testing. -- 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.
http://bugs.winehq.org/show_bug.cgi?id=58811 --- Comment #22 from Chiitoo <chiitoo@gentoo.org> --- I, too, tend to remove the links to the file-system and indeed that was the issue for me as well. Should remember to at least test against that change. Testing it a little just now, having a link to '/usr/share/fonts' worked around the issue as well, which probably is no surprise. Thank you! -- 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.
http://bugs.winehq.org/show_bug.cgi?id=58811 --- Comment #23 from Chiitoo <chiitoo@gentoo.org> --- For posterity, bisecting a different issue, I noticed the Itch.io app (https://itch.io/app) was also affected. Being an Electron app, I suppose there's a good chance a lot of Chromium-based applications were. -- 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.
participants (2)
-
WineHQ Bugzilla -
WineHQ Bugzilla