https://bugs.winehq.org/show_bug.cgi?id=49902
Bug ID: 49902 Summary: Garbled text in Rufus' tooltips Product: Wine Version: 5.18 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs@winehq.org Reporter: oguilherme@protonmail.com Distribution: ---
Created attachment 68260 --> https://bugs.winehq.org/attachment.cgi?id=68260 Comparison between Wine and Windows 10
Hi,
I noticed that upon hovering over any of Rufus' buttons, a tooltip containing random garbled text (presumably uninitialized memory) is displayed every time. I tested this on Wine 5.18 (Arch and Ubuntu) and Wine 5.0 (Ubuntu only) and it is always reproducible.
Probably unrelated to this, but clicking on the "CLOSE" button doesn't do anything.
exe: rufus-3.11p.exe sha1: 26d30f2085c27a96a8c7e9a007da18d7624e4fea url: https://github.com/pbatard/rufus/releases/download/v3.11/rufus-3.11p.exe
Thanks.
https://bugs.winehq.org/show_bug.cgi?id=49902
--- Comment #1 from Guilherme S. oguilherme@protonmail.com --- Created attachment 68261 --> https://bugs.winehq.org/attachment.cgi?id=68261 wine-rufus.log
https://bugs.winehq.org/show_bug.cgi?id=49902
--- Comment #2 from Nikolay Sivov bunglehead@gmail.com --- I believe it is an application bug. It handles tooltip notifications like this:
--- case IDC_ABOUT: utf8_to_wchar_no_alloc(lmprintf(MSG_302), wtooltip, ARRAYSIZE(wtooltip)); lpttt->lpszText = wtooltip; break; ---
wtooltip[] here is on stack in window procedure, handling notification. Returning pointers to it is not a good idea.
https://bugs.winehq.org/show_bug.cgi?id=49902
winetaste@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |winetaste@gmx.net
--- Comment #3 from winetaste@gmx.net --- (In reply to Nikolay Sivov from comment #2)
I believe it is an application bug. It handles tooltip notifications like this:
case IDC_ABOUT: utf8_to_wchar_no_alloc(lmprintf(MSG_302), wtooltip,
ARRAYSIZE(wtooltip)); lpttt->lpszText = wtooltip; break;
wtooltip[] here is on stack in window procedure, handling notification. Returning pointers to it is not a good idea.
But it is working with native Windows. Does Wine not need to handle this?
Confirming for Wine 6.2
https://bugs.winehq.org/show_bug.cgi?id=49902
Bora aykutboray@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |aykutboray@gmail.com
--- Comment #4 from Bora aykutboray@gmail.com --- Rufus isn't working on Wine 6.16. It's not seeing my USB drive.
https://bugs.winehq.org/show_bug.cgi?id=49902
Guilherme S. oguilherme@protonmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution|--- |FIXED
--- Comment #5 from Guilherme S. oguilherme@protonmail.com --- Hi, the garbled text issue was fixed in Wine 7.5, by commit 8e3fef2627d0bfd6c7912fab77a794941518983c.
My bisect log:
git bisect start '--term-new=fixed' '--term-old=unfixed' # fixed: [4bbb43d6c7ee824ff533628020c6309c4ff86c28] Release 7.5. git bisect fixed 4bbb43d6c7ee824ff533628020c6309c4ff86c28 # unfixed: [330dc601978922aa1d5864d29d94882d6b1990d1] Release 7.4. git bisect unfixed 330dc601978922aa1d5864d29d94882d6b1990d1 # fixed: [1447872b0c993113b7bd8215967a502e7aa644e9] sc: Don't silently fail when something doesn't work as expected. git bisect fixed 1447872b0c993113b7bd8215967a502e7aa644e9 # unfixed: [670a1e81b465f67cb7e49fdb84c1fc96853fc9d7] wined3d: Pass mask to wined3d_next_cs_packet(). git bisect unfixed 670a1e81b465f67cb7e49fdb84c1fc96853fc9d7 # unfixed: [3ec6e069f36ea99e72fd655f7fef211077e9a7dd] winealsa: Move MODM_PREPARE and MODM_UNPREPARE to the unixlib. git bisect unfixed 3ec6e069f36ea99e72fd655f7fef211077e9a7dd # unfixed: [d99101977d93f772ceb6ab8d05d2b33c00078788] windows.gaming.input: Fix vector InsertAt / RemoveAt copy sizes. git bisect unfixed d99101977d93f772ceb6ab8d05d2b33c00078788 # fixed: [636b2d92201fde49e8881e09bbba1ea05c836664] d3d12/tests: Build without -DWINE_NO_LONG_TYPES. git bisect fixed 636b2d92201fde49e8881e09bbba1ea05c836664 # unfixed: [44f667fa14c308b489be123c5ed6153010e8e430] win32u: Move apply_window_pos implementation from user32. git bisect unfixed 44f667fa14c308b489be123c5ed6153010e8e430 # fixed: [65ff2098826bb9944b872251b1c9543bbbe6f488] dxgi/tests: Build without -DWINE_NO_LONG_TYPES. git bisect fixed 65ff2098826bb9944b872251b1c9543bbbe6f488 # fixed: [8345d21b3a650bbc279989e05803b067db40ca55] win32u: Don't use designated initializers for lazy_load_driver. git bisect fixed 8345d21b3a650bbc279989e05803b067db40ca55 # fixed: [8e3fef2627d0bfd6c7912fab77a794941518983c] win32u: Move ArrangeIconicWindows implementation from user32. git bisect fixed 8e3fef2627d0bfd6c7912fab77a794941518983c # first fixed commit: [8e3fef2627d0bfd6c7912fab77a794941518983c] win32u: Move ArrangeIconicWindows implementation from user32.
https://bugs.winehq.org/show_bug.cgi?id=49902
Guilherme S. oguilherme@protonmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |UNCONFIRMED Resolution|FIXED |---
--- Comment #6 from Guilherme S. oguilherme@protonmail.com --- Sorry, I had to remove the RESOLVED label because I found out this is somewhat broken again in 7.9.
Although now I don't have garbled text, I have truncated text instead (see attached image).
New bisect log:
git bisect start # good: [3ded60bd1654dc689d24a23305f4a93acce3a6f2] Release 7.8. git bisect good 3ded60bd1654dc689d24a23305f4a93acce3a6f2 # bad: [230e953e31f7228d10c8b0a0d2e8cf4f9af9a231] Release 7.9. git bisect bad 230e953e31f7228d10c8b0a0d2e8cf4f9af9a231 # bad: [9b66a5397a27cdfabd6d6c131a0e98c13a228433] winemac: Directly use ntdll in get_display_device_reg_key. git bisect bad 9b66a5397a27cdfabd6d6c131a0e98c13a228433 # bad: [84e9696078aae9fef0dc34d99eebedfacc0b58e5] nsiproxy.sys: Implement IPv6 icmpstats get_all_parameters on Mac OS and BSD. git bisect bad 84e9696078aae9fef0dc34d99eebedfacc0b58e5 # good: [5582c4d6fb95771368ae2ccc44704179bcb2ff9d] d3drm: Support IDirect3D3 when creating device. git bisect good 5582c4d6fb95771368ae2ccc44704179bcb2ff9d # bad: [e9845d4fda0dacdd3f09874fd55105cdde9e8376] d2d1: Implement LoadVertexShader(). git bisect bad e9845d4fda0dacdd3f09874fd55105cdde9e8376 # good: [7e973421d1e37f788118254722b058d37e6f1c19] include: Add WINE_ALLOC_SIZE attribute to MmAllocate functions. git bisect good 7e973421d1e37f788118254722b058d37e6f1c19 # bad: [135e3176b64eb0ea139f40adb7f5b1c3e89e3577] win32u: Move more default window commands from user32. git bisect bad 135e3176b64eb0ea139f40adb7f5b1c3e89e3577 # good: [fc4067a2ac897c8252a61c2e29bdddfab9f0e176] crypt32/tests: Handle CERT_NAME_SEARCH_ALL_NAMES_FLAG being unsupported before Win8. git bisect good fc4067a2ac897c8252a61c2e29bdddfab9f0e176 # bad: [0e0438bfaaee58d999340fd91db2bc5fcab433dc] win32u: Move default WM_PAINT implementation from user32. git bisect bad 0e0438bfaaee58d999340fd91db2bc5fcab433dc # bad: [1f296397cafbbd5bcf59f01bdf739ccc4a3658ae] win32u: Move default WM_GETICON implementation from user32. git bisect bad 1f296397cafbbd5bcf59f01bdf739ccc4a3658ae # first bad commit: [1f296397cafbbd5bcf59f01bdf739ccc4a3658ae] win32u: Move default WM_GETICON implementation from user32.
https://bugs.winehq.org/show_bug.cgi?id=49902
--- Comment #7 from Guilherme S. oguilherme@protonmail.com --- Created attachment 72551 --> https://bugs.winehq.org/attachment.cgi?id=72551 truncated text tooltip in wine 7.9
https://bugs.winehq.org/show_bug.cgi?id=49902
Ken Sharp imwellcushtymelike@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution|--- |FIXED
--- Comment #8 from Ken Sharp imwellcushtymelike@gmail.com --- You've found a new bug so it requires a new bug report.
Please remember to link it in the AppDB.
https://bugs.winehq.org/show_bug.cgi?id=49902
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |REOPENED Resolution|FIXED |--- Ever confirmed|0 |1
--- Comment #9 from Nikolay Sivov bunglehead@gmail.com --- I don't think so, looks like the same issue to me.
https://bugs.winehq.org/show_bug.cgi?id=49902
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |NOTOURBUG Status|REOPENED |RESOLVED
--- Comment #10 from Nikolay Sivov bunglehead@gmail.com --- This has been fixed at application side, look for wtooltip in https://github.com/pbatard/rufus/commit/c28f9bc49184af4062cac63d9dc78450c573.... Application version 3.18 works fine for me. I don't think it makes sense chase stack allocation differences.