Package: wine Version: 8.0~repack-4 Severity: normal X-Debbugs-Cc: blub...@gmail.com
Dear Maintainer, please compile and run the following program (x86_64-w64-mingw32-gcc test.c -ld3d9 && wine a.exe): #include <stdio.h> #include <stdint.h> #include <windows.h> #include <d3d9.h> HWND wnd_parent; HWND wnd; int f; LRESULT myWindowProcA(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam) { printf("%d %u %d\n", hWnd==wnd, Msg, f++); if (Msg == WM_CLOSE) exit(0); return DefWindowProcA(hWnd, Msg, wParam, lParam); } int main() { WNDCLASSEXA wcex = { sizeof(WNDCLASSEX), CS_DBLCLKS, myWindowProcA, 0L, 0L, NULL, NULL, NULL, NULL, NULL, "windowclass", NULL }; RegisterClassEx(&wcex); WNDCLASSEXA wcex2 = { sizeof(WNDCLASSEX), 0, myWindowProcA, 0L, 0L, NULL, NULL, NULL, NULL, NULL, "windowclass_child", NULL }; RegisterClassEx(&wcex2); uint32_t wstyle = WS_CAPTION|WS_CLIPSIBLINGS|WS_CLIPCHILDREN|WS_VISIBLE|WS_SYSMENU|WS_MINIMIZEBOX; uint32_t wstyleex = WS_EX_ACCEPTFILES|WS_EX_WINDOWEDGE|WS_EX_CONTROLPARENT; wnd_parent = CreateWindowExA(wstyleex, "windowclass", "parent", wstyle, 0, 0, 640, 480, NULL, NULL, NULL, NULL ); ShowWindow(wnd_parent, SW_SHOWDEFAULT); UpdateWindow(wnd_parent); wnd = CreateWindowExA(0, "windowclass_child", "child", WS_CHILD, 0, 0, 320, 240, wnd_parent, NULL, NULL, NULL ); ShowWindow(wnd, SW_SHOWDEFAULT); UpdateWindow(wnd); IDirect3D9* d3d = Direct3DCreate9(D3D_SDK_VERSION); DWORD BehaviorFlags = D3DCREATE_SOFTWARE_VERTEXPROCESSING | D3DCREATE_MULTITHREADED; D3DPRESENT_PARAMETERS d3dpp = {}; D3DDISPLAYMODE dm; IDirect3D9_GetAdapterDisplayMode(d3d, D3DADAPTER_DEFAULT, &dm); d3dpp.Windowed = TRUE; d3dpp.SwapEffect = D3DSWAPEFFECT_COPY; d3dpp.BackBufferFormat = dm.Format; d3dpp.BackBufferHeight = 640; d3dpp.BackBufferWidth = 480; d3dpp.hDeviceWindow = wnd_parent; IDirect3DDevice9* d3ddev; IDirect3D9_CreateDevice(d3d, D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, NULL, BehaviorFlags, &d3dpp, &d3ddev); IDirect3D9* d3d2 = Direct3DCreate9(D3D_SDK_VERSION); d3dpp.hDeviceWindow = wnd; IDirect3DDevice9* d3ddev2; IDirect3D9_CreateDevice(d3d2, D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, NULL, BehaviorFlags, &d3dpp, &d3ddev2); for (int frame=0;frame<600;frame++) { IDirect3DDevice9_Clear(d3ddev, 0,NULL,D3DCLEAR_TARGET,D3DCOLOR_RGBA(255,0,frame*4,0),1.0f,0); IDirect3DDevice9_Present(d3ddev, NULL, NULL, NULL, NULL ); IDirect3DDevice9_Clear(d3ddev2, 0,NULL,D3DCLEAR_TARGET,D3DCOLOR_RGBA(0,255,frame*4,0),1.0f,0); IDirect3DDevice9_Present(d3ddev2, NULL, NULL, NULL, NULL ); MSG msg; while( (PeekMessage( &msg, NULL, 0, 0, PM_REMOVE )) != 0) { TranslateMessage(&msg); DispatchMessage(&msg); } } } Expected behavior: Should show an animated green-teal rectangle, and an animated red-magenta L shape. Actual behavior: Shows a black rectangle, and the expected red-magenta L shape. Dragging another window over the black rectangle leaves the pixels unchanged, duplicating the window border a bunch of times. I have verified that the expected result shows up - if I build Wine 8.0 from source - if I build latest Wine git from source (somewhere around version 8.13) - on Ubuntu 22.04's Wine package (6.0.3~repack-1) - on Arch's Wine package (8.13-1) - on Windows 7 - on Windows 10 therefore I believe that this bug is Debian-specific somehow. -- Package-specific info: /usr/bin/wine points to /usr/bin/wine-stable. -- System Information: Debian Release: 12.1 APT prefers stable-security APT policy: (500, 'stable-security'), (500, 'stable') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 6.1.0-10-amd64 (SMP w/16 CPU threads; PREEMPT) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US:en Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages wine depends on: ii wine32 8.0~repack-4 ii wine64 8.0~repack-4 wine recommends no packages. Versions of packages wine suggests: ii dosbox 0.74-3-4+b1 pn exe-thumbnailer | kio-extras <none> pn playonlinux <none> pn q4wine <none> pn winbind <none> pn wine-binfmt <none> pn winetricks <none> Versions of packages libwine depends on: ii libasound2 1.2.8-1+b1 ii libc6 2.36-9+deb12u1 ii libcapi20-3 1:3.27-3+b1 ii libfontconfig1 2.14.1-4 ii libfreetype6 2.12.1+dfsg-5 ii libglib2.0-0 2.74.6-2 ii libgphoto2-6 2.5.30-1 ii libgphoto2-port12 2.5.30-1 ii libgstreamer-plugins-base1.0-0 1.22.0-3+deb12u1 ii libgstreamer1.0-0 1.22.0-2 ii libpcap0.8 1.10.3-1 ii libpulse0 16.1+dfsg1-2+b1 ii libudev1 252.12-1~deb12u1 ii libunwind8 1.6.2-3 ii libusb-1.0-0 2:1.0.26-1 ii libx11-6 2:1.8.4-2+deb12u1 ii libxext6 2:1.3.4-1+b1 ii libz-mingw-w64 1.2.13+dfsg-1 ii ocl-icd-libopencl1 [libopencl1] 2.3.1-1 Versions of packages libwine recommends: ii fonts-liberation 1:1.07.4-11 ii fonts-wine 8.0~repack-4 ii gstreamer1.0-plugins-good 1.22.0-5+deb12u1 ii libasound2-plugins 1.2.7.1-1 ii libcups2 2.4.2-3+deb12u1 ii libdbus-1-3 1.14.8-2~deb12u1 ii libgl1 1.6.0-1 ii libgl1-mesa-dri 22.3.6-1+deb12u1 ii libgnutls30 3.7.9-2 ii libgssapi-krb5-2 1.20.1-2 ii libkrb5-3 1.20.1-2 ii libodbc2 2.3.11-2+deb12u1 ii libosmesa6 22.3.6-1+deb12u1 ii libsdl2-2.0-0 2.26.5+dfsg-1 ii libv4l-0 1.22.1-5+b2 ii libvulkan1 1.3.239.0-1 ii libxcomposite1 1:0.4.5-1 ii libxcursor1 1:1.2.1-1 ii libxfixes3 1:6.0.0-2 ii libxi6 2:1.8-1+b1 ii libxinerama1 2:1.1.4-3 ii libxrandr2 2:1.5.2-2+b1 ii libxrender1 1:0.9.10-1.1 ii libxxf86vm1 1:1.1.4-1+b2 Versions of packages libwine suggests: pn cups-bsd <none> ii gstreamer1.0-libav 1.22.0-2 ii gstreamer1.0-plugins-bad 1.22.0-4+deb12u1 ii gstreamer1.0-plugins-ugly 1.22.0-2 pn ttf-mscorefonts-installer <none> Versions of packages wine32 depends on: ii libc6 2.36-9+deb12u1 ii libwine 8.0~repack-4 wine32 recommends no packages. Versions of packages wine32 suggests: pn wine32-preloader <none> Versions of packages wine64 depends on: ii libc6 2.36-9+deb12u1 ii libwine 8.0~repack-4 Versions of packages wine64 recommends: ii wine32 8.0~repack-4 Versions of packages wine64 suggests: pn wine64-preloader <none> Versions of packages wine is related to: pn dxvk <none> pn dxvk-wine32-development <none> pn dxvk-wine64-development <none> ii fonts-wine 8.0~repack-4 -- no debconf information