[Bug 44055] Multiple applications fail to run in Win7+ mode, requiring DWM composition API support to be enabled (Aero Glass, transparent windows)(Affinity Designer 1.x, Electron-based apps using isAeroGlassEnabled API)

WineHQ Bugzilla wine-bugs at winehq.org
Mon Mar 15 04:42:41 CDT 2021


https://bugs.winehq.org/show_bug.cgi?id=44055

--- Comment #25 from Anastasius Focht <focht at gmx.net> ---
Hello folks,

revisiting, still present.

'Sky Go app' (Electron based app) from bug 48578 exhibits a specific crash
pattern because of this, after dismissing the Aero theme error dialog. I'm
putting it here for documentation.

Stable download link via Internet Archive:

https://web.archive.org/web/20200622093120/https://desktopclient.ott.sky.com/skygodesktop/DE/SkyGoInstaller.exe

--- snip ---
$ pwd
/home/focht/.wine/drive_c/users/focht/Application Data/Sky/Sky Go

$ WINEDEBUG=+seh,+relay wine ./Sky\ Go.exe >>log.txt 2>&1
...
00fc:Call dwmapi.DwmIsCompositionEnabled(0033f1d8) ret=01497f5e
...
00fc:Ret  dwmapi.DwmIsCompositionEnabled() retval=00000000 ret=01497f5e
...
00fc:Call user32.CreateWindowExW(00000000,03eebea6 L"Static",07e79560 L"A
Windows Aero theme is required for this app to work correctly. Please enable
Aero through the Control Panel (Appearance and Personalization -> Change the
theme)",50000000,00000000,00000000,00000000,00000000,0001007a,00000000,00000000,00000000)
ret=03eb42d4 
...
[248:0315/084050.765:FATAL:global_shortcut_listener_win.cc(22)] Check failed:
BrowserThread::CurrentlyOn(BrowserThread::UI). 
00fc:Ret  ntdll.NtWriteFile() retval=00000000 ret=7b013096
00fc:Ret  KERNEL32.WriteFile() retval=00000001 ret=0036c13a
00fc:Ret  ucrtbase.fflush() retval=00000000 ret=006997cf
00fc:Call ucrtbase.memcpy(0033e560,04a9ea88,0000007e) ret=0069986b
00fc:Ret  ucrtbase.memcpy() retval=0033e560 ret=0069986b
00fc:trace:seh:dispatch_exception code=80000003 flags=0 addr=006998B7
ip=006998b7 tid=00fc
00fc:trace:seh:dispatch_exception  info[0]=00000000
00fc:warn:seh:dispatch_exception EXCEPTION_BREAKPOINT exception (code=80000003)
raised
00fc:trace:seh:dispatch_exception  eax=0033e560 ebx=00000001 ecx=0033e530
edx=00000000 esi=0033e978 edi=00000000
00fc:trace:seh:dispatch_exception  ebp=0033e968 esp=0033e520 cs=0023 ds=002b
es=002b fs=0063 gs=006b flags=00200246
00fc:trace:seh:call_vectored_handlers calling handler at 7B00F600 code=80000003
flags=0
00fc:trace:seh:call_vectored_handlers handler at 7B00F600 returned 0
00fc:trace:seh:call_stack_handlers calling handler at 028FFA3B code=80000003
flags=0
00fc:trace:seh:call_stack_handlers handler at 028FFA3B returned 1
--- snip ---

-> 'FATAL:global_shortcut_listener_win.cc(22)] Check failed:
BrowserThread::CurrentlyOn(BrowserThread::UI).'

>From Chromium sources:

https://chromium.googlesource.com/chromium/src/+/refs/heads/master/chrome/browser/extensions/global_shortcut_listener_win.cc

--- snip ---
// static
GlobalShortcutListener* GlobalShortcutListener::GetInstance() {
  CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
  static GlobalShortcutListenerWin* instance =
      new GlobalShortcutListenerWin();
  return instance;
}
--- snip ---

https://chromium.googlesource.com/chromium/src/+/refs/heads/master/content/public/browser/browser_thread.h

https://chromium.googlesource.com/chromium/src/+/lkgr/docs/threading_and_tasks.md

https://chromium.googlesource.com/chromium/src.git/+/master/docs/threading_and_tasks_faq.md

Due to DWM API failure, different code paths are taken which later leads to the
main thread not becoming the browser message processing thread in the browser
process, hence the assert() is triggered.

$ sha1sum SkyGoInstaller.exe 
35884b7f2c1089a8f7fb8a9d5339b6290e4b6b9a  SkyGoInstaller.exe

$ du -sh SkyGoInstaller.exe 
52M    SkyGoInstaller.exe

$ wine --version
wine-6.4

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.


More information about the wine-bugs mailing list