http://bugs.winehq.org/show_bug.cgi?id=58710
Bug ID: 58710
Summary: wmic now also prints system properties since
3c8a072b52f2159e68bfd4e471faf284309201ed
Product: Wine
Version: 10.13
Hardware: x86-64
OS: Linux
Status: NEW
Keywords: download, regression
Severity: normal
Priority: P2
Component: -unknown
Assignee: wine-bugs(a)winehq.org
Reporter: xerox.xerox2000x(a)gmail.com
Distribution: ---
Do:
"WINEDEBUG=-all wine wmic bios get version"
Output:
__GENUS __CLASS __RELPATH __PROPERTY_COUNT__DERIVATION__SERVER
__NAMESPACE __PATH Version
2 Win32_BIOS 1 {}
WINE - 1
This confuses programs that use wmic's output (like Altium installer in win7
mode)
Expected output:
Version
WINE -1
--
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=58480
Bug ID: 58480
Summary: winebuild ASLR breaks older DLLs
Product: Wine
Version: 10.0
Hardware: x86-64
OS: Linux
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: -unknown
Assignee: wine-bugs(a)winehq.org
Reporter: tres.finocchiaro(a)gmail.com
Distribution: ---
The following commit (to the best of my understanding) introduces build flags
to the PE sections of a wineg++ produced '.so.exe' file that force
ASLR/DYNAMICBASE onto executables that it creates.
https://github.com/wine-mirror/wine/commit/518e394794160818ffe6826c874ff2f5…
As identified downstream with mingw and msvc, some scenarios exist where this
ASLR/DYNAMICBASE must be disabled for the highest compatibility with 3rd-party
DLLs, specifically 3rd-party VST instrument and effect plugins as they're
loaded through DAWs using a Linux-wine-bridge. (Linux can be read ambiguously
here, the issue would impact Unixes too)
The downstream bug report encompases Windows and Wine instances of the LMMS
application, however a solution exists on Windows for both the MSVC compiler as
well as the mingw compiler (via relevant dynamicbase flags).
MSVC:
https://learn.microsoft.com/en-us/cpp/build/reference/dynamicbase
mingw:
https://www.msys2.org/news/#2021-01-31-aslr-enabled-by-default
Applying a similar flag to wineg++/winegcc/winebuild has proven difficult
without forking the winebuild executable. The stop-gap patch that LMMS has
developed is provided here as a reference
https://github.com/Fastigium/winebuild/commit/7f9e27e44cfb8eba79f3850f46e12…
however this patch requires us to add winebuild as a build-time dependency to
our build system. This is OK for a stop-gap, but as a long-term solution, I
would like advice from the winehq team on how to support legacy DLLs (such as
pre-Vist VST plugins) through a wine-bridge as a long-term solution.
--
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.
https://bugs.winehq.org/show_bug.cgi?id=43124
Bug ID: 43124
Summary: FlashWindowEx: WM_NCACTIVATE behavior is incorrect
Product: Wine
Version: unspecified
Hardware: x86
OS: Linux
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: user32
Assignee: wine-bugs(a)winehq.org
Reporter: gamax92(a)aol.com
Distribution: ---
Created attachment 58328
--> https://bugs.winehq.org/attachment.cgi?id=58328
FlashWindowEx dwFlags parameter tests
Depending on the dwFlags parameter, FlashWindowEx may send a WM_NCACTIVATE
message with the wrong wParam value. Some flags should not send a WM_NCACTIVATE
message at all.
Attached is a document I've made from testing FlashWindowEx with various flags
and having the window active/inactive.
This issue seems to be related to Overwatch losing focus on respawn, it calls
FlashWindowEx with dwFlags = 0xE (FLASHW_TIMERNOFG + FLASHW_TRAY), which
according to my tests should send a WM_NCACTIVATE message with 1, but wine
sends 0 instead. Forcing FlashWindowEx to send TRUE instead did resolve the
loss of focus.
--
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.
https://bugs.winehq.org/show_bug.cgi?id=49195
Bug ID: 49195
Summary: Multiple 4k demoscene OpenGL demos crash on startup
(failure to lookup atom 0xC019 'static' from global
atom tables)
Product: Wine
Version: 5.8
Hardware: x86-64
OS: Linux
Status: NEW
Severity: normal
Priority: P2
Component: user32
Assignee: wine-bugs(a)winehq.org
Reporter: focht(a)gmx.net
Distribution: ---
Hello folks,
extracted from bug 48898
My comment: https://bugs.winehq.org/show_bug.cgi?id=48898#c12
--- quote ---
To me it looks like bug 18490 ("Multiple games fail to set pixel format on D3D
device context created on desktop window (Empire: Total War, Napoleon: Total
War, Utopia City)") but for GL device context on the desktop window.
According to online information it's not allowed to do any rendering using this
context but enough to call functions like glGetString() etc.
Maybe some of the Wine graphics folks could weigh in with an opinion if this
limitation is already known / tracked in a bug?
--- quote ---
Henri's answer: https://bugs.winehq.org/show_bug.cgi?id=48898#c13
--- quote ---
I'm not aware of an existing bug report for this issue, no. It does strike me
as similar to bug 36506 though, and it would not particularly surprise me if
wglGetProcAddress() is supposed to return results consistent with
GL_EXTENSIONS/GL_VERSION here, even without a current GL context.
I seem to recall having established in the context of bug 18490 that creating a
GL context (or more specifically, setting a pixel format) on the desktop window
is indeed supposed to fail. In any case, this seems like of of those bugs that
would benefit from tests to establish what's supposed to happen.
--- quote ---
Turns out this was a side-effect of an earlier problem.
It was not supposed to be GetDC(NULL) (Desktop window).
--- snip ---
$ WINEDEBUG=+seh,+relay,+server,+class,+win,+msg wine ./End\ of\ time\ 720p.exe
>>log.txt 2>&1
...
0024:Call user32.ChangeDisplaySettingsA(00421288,00000004) ret=004200da
...
0024: get_desktop_window( force=0 )
0024: get_desktop_window() = 0 { top_window=00010020, msg_window=00010026 }
...
0024:Ret user32.ChangeDisplaySettingsA() retval=00000000 ret=004200da
0024:Call
KERNEL32.CreateThread(00000000,00000000,004201ca,004304e8,00000000,00000000)
ret=004200ee
...
0024:Ret KERNEL32.CreateThread() retval=00000080 ret=004200ee
00bc: *fd* 17 <- 38
00bc: init_thread( unix_pid=3683, unix_tid=3729, debug_level=1, teb=7ffd4000,
entry=004201ca, reply_fd=15, wait_fd=17, cpu=x86 )
0024:Call
user32.CreateWindowExA(00000000,0000c019,00000000,91000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000)
ret=004200f4
0024:trace:win:WIN_CreateWindowEx (null) #c019 ex=00000000 style=91000000 0,0
0x0 parent=(nil) menu=(nil) inst=(nil) params=(nil)
00bc: init_thread() = 0 { pid=0020, tid=00bc, server_start=1d62d3b280579be
(-2.9701360), info_size=0, version=603, all_cpus=00000003, suspend=0 }
0024:trace:win:dump_window_styles style: WS_POPUP WS_VISIBLE WS_MAXIMIZE
0024:trace:win:dump_window_styles exstyle:
...
00bc:Starting thread proc 0x4201ca (arg=0x4304e8)
...
0024: create_window( parent=00010020, owner=00000000, atom=c019,
instance=00000000, dpi=96, awareness=2, class=L"" )
0024: create_window() = INVALID_HANDLE { handle=00000000, parent=00000000,
owner=00000000, extra=0, class_ptr=00000000, dpi=0, awareness=0 }
0024:warn:win:create_window_handle error 6 creating window
0024:trace:class:GetClassInfoExW (nil) #c019 0x1518f9e0
0024:trace:class:CLASS_FindClass #c019 0x7e910000 -> not found
0024:Ret user32.CreateWindowExA() retval=00000000 ret=004200f4
--- snip ---
The failing window creation resulted in NULL handle which got passed to
user32.GetDC():
--- snip ---
0024:Call user32.GetDC(00000000) ret=004200fb
0024:trace:win:GetDCEx hwnd 0x10020, hrgnClip (nil), flags 00000003
...
0024: get_visible_region( window=00010020, flags=00000013 )
0024: get_visible_region() = 0 { top_win=00010020, top_rect={-1920,0;-1919,1},
win_rect={0,0;3200,1080}, paint_flags=00000001, total_size=16,
region={{-1920,0;1280,1080}} }
0024:Call
winex11.drv.GetDC(00030039,00010020,00010020,1518fde0,1518fdf0,00000013)
ret=7e97bd3e
0024:Ret winex11.drv.GetDC() retval=00000001 ret=7e97bd3e
0024:trace:win:GetDCEx (0x10020,(nil),0x13): returning 0x30039 (updated)
0024:Ret user32.GetDC() retval=00030039 ret=004200fb
--- snip ---
Well, the rest of the OpenGL story is known and the current behaviour makes
sense.
Back to the actual problem...
The creation of the window which ought the be used for OpenGL context/rendering
fails because atom 0xc019 can't be found/resolved.
I should have looked more carefully at the trace log and the demo disassembly.
--- snip ---
...
004200B6 | xor esi,esi |
004200B8 | push esi |
004200B9 | push esi |
004200BA | push esi |
004200BB | push esi |
004200BC | push esi |
004200BD | push esi |
004200BE | push esi |
004200BF | push esi |
004200C0 | push esi |
004200C1 | push 91000000 |
004200C6 | push esi |
004200C7 | push C019 | global atom!
004200CC | push esi |
004200CD | push 4 |
004200CF | push end of time 720p.421288 |
004200D4 | call dword ptr ds:[<&user32.ChangeDisplaySettingsA>] |
004200DA | push esi |
004200DB | push esi |
004200DC | push end of time 720p.4304E8 |
004200E1 | push end of time 720p.4201CA |
004200E6 | push esi |
004200E7 | push esi |
004200E8 | call dword ptr ds:[<&KERNEL32.CreateThread>] |
004200EE | call dword ptr ds:[<&user32.CreateWindowExA>] | fails
004200F4 | push eax |
004200F5 | call dword ptr ds:[<&user32.GetDC>] |
004200FB | mov edi,eax |
004200FD | mov dword ptr ds:[3AB08EC],eax |
00420102 | push esi |
00420103 | push edi |
00420104 | push esi |
00420105 | push end of time 720p.42125C |
0042010A | push edi |
0042010B | call dword ptr ds:[<&gdi32.ChoosePixelFormat>] |
00420111 | push eax |
00420112 | push edi |
00420113 | call dword ptr ds:[<&gdi32.SetPixelFormat>] |
00420119 | call dword ptr ds:[<&opengl32.wglCreateContext>] |
0042011F | push eax |
00420120 | push edi |
00420121 | call dword ptr ds:[<&opengl32.wglMakeCurrent>] |
00420127 | call dword ptr ds:[<&user32.ShowCursor>] |
0042012D | call end of time 720p.4202CC |
--- snip ---
The demoscene guys are crazy and fight for each saved byte ;-)
Courtesy of: http://www.pouet.net/topic.php?which=9894
--- quote ---
I was able to get 4 bytes off of a test 1k intro (Peach GLSL Shader of Japan)
by replacing the "edit" string with 0xC018, making it 1006 bytes instead of
1010. Nice.
...and then I got it down to 1004 bytes, because now "test eax, eax" compressed
better than "test ax, ax", which used to compress better sometime before this
newest change. ;) This 1k intro business is crazy, you'd really need some kind
of brute-force code masher that tries all possible combinations of code that
perform the same thing.
--- quote ---
--- quote ---
That´s mine since 2009 using DirectX9...someone told me using "static" instead
of "edit" would be better back then in some other thread...was iq if i remember
correctly.
The ATOM for "static" is 0xC019 btw, but be warned: it added 7 bytes here in my
first test, opposed to chopping off 4 bytes in case of "edit".
--- quote ---
--- quote ---
Oh, shit...i did the test the wrong way around...meaning the ATOM actually
chopped off 7 bytes in case of "static" vs. "0xC019" :/ :D
Yay, thanks for the nice trick, man! :)
--- quote ---
Also relevant, shows dump of global and typical local atom tables:
https://github.com/lungetech/ICAS/blob/master/logs/volatility/win32/output/…
Wine source:
https://source.winehq.org/git/wine.git/blob/9e26bc811656ad8eb901bffa5528b9c…
--- snip ---
407 /***********************************************************************
408 * CLASS_FindClass
409 *
410 * Return a pointer to the class.
411 */
412 static CLASS *CLASS_FindClass( LPCWSTR name, HINSTANCE hinstance )
413 {
414 static const WCHAR comctl32W[] =
{'c','o','m','c','t','l','3','2','.','d','l','l',0};
415 struct list *ptr;
416 ATOM atom = get_int_atom_value( name );
417
418 GetDesktopWindow(); /* create the desktop window to trigger builtin
class registration */
419
420 if (!name) return NULL;
421
422 name = CLASS_GetVersionedName( name, NULL, NULL, TRUE );
423
424 for (;;)
425 {
426 USER_Lock();
427
428 LIST_FOR_EACH( ptr, &class_list )
429 {
430 CLASS *class = LIST_ENTRY( ptr, CLASS, entry );
431 if (atom)
432 {
433 if (class->atomName != atom) continue;
434 }
435 else
436 {
437 if (strcmpiW( class->name, name )) continue;
438 }
439 if (!class->local || class->hInstance == hinstance)
440 {
441 TRACE("%s %p -> %p\n", debugstr_w(name), hinstance,
class);
442 return class;
443 }
444 }
445 USER_Unlock();
446
447 if (atom) break;
448 if (!is_comctl32_class( name )) break;
449 if (GetModuleHandleW( comctl32W )) break;
450 if (!LoadLibraryW( comctl32W )) break;
451 TRACE( "%s retrying after loading comctl32\n", debugstr_w(name) );
452 }
453
454 TRACE("%s %p -> not found\n", debugstr_w(name), hinstance);
455 return NULL;
456 }
--- snip ---
https://source.winehq.org/git/wine.git/blob/9e26bc811656ad8eb901bffa5528b9c…
$ sha1sum atz-end_of_time.zip
3a4ce3fd92e2fdd1a4533ee67d4809d3f2184f6b atz-end_of_time.zip
$ du -sh atz-end_of_time.zip
3.3M atz-end_of_time.zip
$ wine --version
wine-5.8-173-g9e26bc8116
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.
http://bugs.winehq.org/show_bug.cgi?id=58515
Bug ID: 58515
Summary: Street Chaves only displays a black screen
(regression)
Product: Wine
Version: 10.11
Hardware: x86-64
OS: Linux
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: -unknown
Assignee: wine-bugs(a)winehq.org
Reporter: denilsonsa(a)gmail.com
Distribution: ---
Wine versions up to 9.7 were able to render the game graphics correctly. Now I
tested again on Wine version 10.11 and all I get is a black screen.
The game seems to be working, because I can blindly press "Z" to confirm, then
"5" to insert credits (and hear the sound effect), and "1" to start, an "Z" a
couple of times to select my character and advance to the actual fight… After
all of this, I can hear the in-game music and the in-game sound effects of the
fight. I just can't see any of it due to being pure black.
How to reproduce?
1. Get the game archive from https://archive.org/details/street-chaves-1.5-a
2. Unpack it anywhere, and run `wine Chaves.exe`
3. After a few moments, a black window without any decoration will show up.
Having no decorations is normal expected behavior. Having it completely black
is a bug/regression.
Tests?
The game works fine under "Proton Experimental" on the Steam Deck, but I don't
know exactly what is the Wine version.
It also works fine under "Proton 10.0-1 (beta)".
It does NOT work (black screen) under Wine 10.11 on Manjaro Linux.
It does NOT work (black screen) under wine-ge-8-26-x86_64, which is the default
Wine runner for Lutris, installed from Flatpak.
https://lutris.net/games/street-chaves/
Other Wine versions are untested.
If you are testing other versions, please be aware that older versions had a
problem with keyboard input. You could see graphics on the screen, but you
couldn't progress any further. This has been solved in bug 52738.
--
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.
https://bugs.winehq.org/show_bug.cgi?id=49905
Bug ID: 49905
Summary: VbsEdit runs wscript.exe with unsupported switches /d
and /u
Product: Wine
Version: 5.18
Hardware: x86-64
OS: Linux
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: wscript
Assignee: wine-bugs(a)winehq.org
Reporter: sloper42(a)yahoo.com
Distribution: ---
Created attachment 68266
--> https://bugs.winehq.org/attachment.cgi?id=68266
patch for wscript
In VbsEdit version 9.2139 from https://www.vbsedit.com/, when choosing "Start
Debugging with wscript", wscript.exe is called with unsupported options /d
(debug) and /u (unicode).
Therefore wscripts bail out and script is not executed.
Solution is to ignore these options.
--
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=58637
Bug ID: 58637
Summary: SimCity 2000 Windows 95 edition doesn't launch
Product: Wine
Version: 10.13
Hardware: x86-64
OS: Linux
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: -unknown
Assignee: wine-bugs(a)winehq.org
Reporter: ihatemylife0025(a)gmail.com
Distribution: ---
Created attachment 79198
--> http://bugs.winehq.org/attachment.cgi?id=79198
Logs
The Windows 95 edition of SimCity 2000 (URL:
https://archive.org/details/sc2000_win95) doesn't launch. I remember it did
work in older versions of wine (I think 8.0) but I can't point out the exact
version it stopped working.
Steps to reproduce:
Launch the game directly (not the setup, it's 16-bit and it's known to be
problematic even on Windows. The game itself is 32-bit)
WIN95/SC2K/SIMCITY.EXE
I tried https://github.com/sc2kfix/sc2kfix too which is a patch that gets the
game running on modern versions of Windows but it didn't make any difference.
My computer's technical specifications (although I don't think they matter, I
tried it with several different computers with different distros and got the
exact same error):
GPU:
0000:00:02.0 VGA compatible controller: Intel Corporation TigerLake-LP GT2
[Iris Xe Graphics] (rev 01)
Subsystem: Lenovo Device 3f9c
Kernel driver in use: i915
Kernel modules: i915, xe
CPU:
11th Gen Intel(R) Core(TM) i5-1135G7 (8) @ 4.20 GHz
Laptop Model:
82H8 (IdeaPad 3 15ITL6)
Kernel Version:
Linux 6.15.10-200.fc42.x86_64
Distribution:
Fedora 42 KDE Plasma Edition
--
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=58699
Bug ID: 58699
Summary: Profi cash 12 user interface is rendered mostly black
Product: Wine
Version: 10.15
Hardware: x86-64
URL: https://web.archive.org/web/20250914090219/https://www
.vr-updates.de/gad/man/profi_cash_12_installer.exe
OS: Linux
Status: NEW
Keywords: download, regression
Severity: normal
Priority: P2
Component: win32u
Assignee: wine-bugs(a)winehq.org
Reporter: arethusa26(a)gmail.com
CC: rbernon(a)codeweavers.com
Regression SHA1: c3f3ef24e8d1ebe49e8073e8e5b11de859951352
Distribution: ---
Created attachment 79299
--> http://bugs.winehq.org/attachment.cgi?id=79299
Profi cash 12 debug output
With wine-10.15, after launching Profi cash 12, its user interface is rendered
mostly black, which makes it unusable. This problem did not occur with
wine-10.14.
Regression testing identified the following commit:
c3f3ef24e8d1ebe49e8073e8e5b11de859951352 is the first bad commit
commit c3f3ef24e8d1ebe49e8073e8e5b11de859951352
Author: Rémi Bernon <rbernon(a)codeweavers.com>
Date: Thu Sep 11 15:45:36 2025 +0200
win32u: Don't store the window OpenGL drawables on the DCs.
--
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=58744
Bug ID: 58744
Summary: Missing Type on get_type within dlls/msi/suminfo.c
Product: Wine
Version: unspecified
Hardware: x86-64
OS: Linux
Status: UNCONFIRMED
Severity: trivial
Priority: P2
Component: msi
Assignee: wine-bugs(a)winehq.org
Reporter: matgrioni(a)gmail.com
Distribution: ---
For a certain use case I wanted to run Microsoft Keyboard Layout Creator
(MSKLC) on a serverless function and therefore was trying to get it to run on
Wine.
The application takes a keyboard layout definition and then has functionality
to create a MSI which contains the DLL for the created keyboard. When running
this compilation step, the MSI creation was failing and I was able to identify
that the MSI creation process with MSKLC was calling MsiSummaryInfoSetPropertyW
with property PID_EDITTIME which is missing from /dlls/msi/suminfo.c:get_type
and should have type VT_FILETIME according to this documentation:
https://learn.microsoft.com/en-us/windows/win32/msi/summaryinfo-summaryinfo.
By adding PID_EDITTIME to the function, I was able to unblock this part.
Overall it's a trivial problem and fix, I figure in part it hasn't been run
into is that the use case of *creating* an MSI (rather than running it), is
quite small, and it seems the EDITTIME property may not be read from on
installation.
I created a bug for it, since I was having issues creating a fork and the
problem is quite trivial, and my ability to contribute to wine will probably
not extend much beyond this issue :)
--
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.
https://bugs.winehq.org/show_bug.cgi?id=54670
Bug ID: 54670
Summary: 16-bit applications fail in wow64 mode
Product: Wine
Version: 8.0
Hardware: x86-64
OS: Linux
Status: NEW
Keywords: download, Installer, wow64
Severity: normal
Priority: P2
Component: -unknown
Assignee: wine-bugs(a)winehq.org
Reporter: austinenglish(a)gmail.com
Distribution: Debian
$ wineserver -k ; rm -rf ~/.wine ; WINE=/opt/oldwownew/wine-8.0/bin/wine
winetricks -q icodecs
------------------------------------------------------
Executing load_icodecs
Executing cabextract -q -d
/home/austin/.wine/dosdevices/c:/windows/temp/codinstl/
/home/austin/.cache/winetricks/icodecs/codinstl.exe
Executing cd /home/austin/.wine/dosdevices/c:/windows/temp/codinstl/
Executing /opt/oldwownew/wine-8.0/bin/wine setup.exe /s
0284:err:environ:init_peb starting L"C:\\windows\\syswow64\\winevdm.exe" in
experimental wow64 mode
0284:fixme:wow:wow64_NtSetLdtEntries 0107 02d0323f 0100f338 0000 00000000
00000000: stub
0284:err:module:LdrInitializeThunk "krnl386.exe16" failed to initialize,
aborting
0284:err:module:LdrInitializeThunk Initializing dlls for
L"C:\\windows\\syswow64\\winevdm.exe" failed, status c0000005
------------------------------------------------------
--
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.