https://bugs.winehq.org/show_bug.cgi?id=55945
Bug ID: 55945 Summary: KakaoTalk crashes when opening certain profiles: unimplemented function gdiplus.dll.GdipDrawImageFX Product: Wine Version: 8.21 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: gdiplus Assignee: wine-bugs@winehq.org Reporter: jinoh.kang.kr@gmail.com Distribution: ---
gdiplus.dll.GdipDrawImageFX() is not implemented.
Affected applications:
- KakaoTalk crashes when opening certain profiles.
https://bugs.winehq.org/show_bug.cgi?id=55945
--- Comment #1 from Esme Povirk madewokherd@gmail.com --- Is this the correct download page for the application? https://kakao.io/?lang=EN
https://bugs.winehq.org/show_bug.cgi?id=55945
Jinoh Kang jinoh.kang.kr@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download URL| |https://app-pc.kakaocdn.net | |/talk/win32/KakaoTalk_Setup | |.exe
--- Comment #2 from Jinoh Kang jinoh.kang.kr@gmail.com --- (In reply to Esme Povirk from comment #1)
Is this the correct download page for the application? https://kakao.io/?lang=EN
No, that looks like SEO spam.
Try https://www.kakaocorp.com/page/service/service/KakaoTalk?lang=en or the download link I just set.
https://bugs.winehq.org/show_bug.cgi?id=55945
Vijay Kamuju infyquest@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |infyquest@gmail.com
--- Comment #3 from Vijay Kamuju infyquest@gmail.com --- Added a stub. https://gitlab.winehq.org/wine/wine/-/merge_requests/4568
https://bugs.winehq.org/show_bug.cgi?id=55945
temp82@luukku.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |temp82@luukku.com
--- Comment #4 from temp82@luukku.com --- I think the patch was merged by AJ
https://bugs.winehq.org/show_bug.cgi?id=55945
--- Comment #5 from Jinoh Kang jinoh.kang.kr@gmail.com --- (In reply to Vijay Kamuju from comment #3)
Added a stub. https://gitlab.winehq.org/wine/wine/-/merge_requests/4568
That patch (https://gitlab.winehq.org/wine/wine/-/merge_requests/4568) does not fix the crash:
0024:fixme:wincodecs:jpeg_decoder_get_metadata_blocks stub 0024:fixme:wincodecs:jpeg_decoder_get_metadata_blocks stub 0024:fixme:wincodecs:jpeg_decoder_get_metadata_blocks stub 0024:fixme:win:NtUserFlashWindowEx 0x433f44c - semi-stub 0024:fixme:gdiplus:GdipDrawImageFX (0DAB01D8, 0DE68898, 0433EBD4, 00000000, 00000000, 0DE85888, 2): stub 014c:fixme:toolhelp:CreateToolhelp32Snapshot Unimplemented: heap list snapshot 014c:fixme:nls:RtlGetThreadPreferredUILanguages 00000038, 0140FA6C, 0140FA7C 0140FA70 014c:fixme:nls:get_dummy_preferred_ui_language (0x38 0x409 0140FA6C 0140FA7C 0140FA70) returning a dummy value (current locale) 014c:fixme:process:RegisterApplicationRestart (L"kakao_crash_event_name_0x012c4053_4100652|kakao_crash_log_0x012c4053|kakao_crash_error_log_0x012c4053|kakao_crash_param_0x012c4053|936 /RestartByRestartManager:B12BA74F-5521-484e-B271-DB01854A9838",0) 014c:fixme:ole:CoInitializeSecurity 00000000, -1, 00000000, 00000000, 0, 3, 00000000, 0, 00000000 stub 014c:fixme:wbemprox:client_security_SetBlanket 7FB71850, 021EC768, 10, 0, (null), 3, 3, 00000000, 0 014c:fixme:wbemprox:client_security_Release 7FB71850 014c:fixme:ntdll:NtQuerySystemInformation info_class SYSTEM_PERFORMANCE_INFORMATION 014c:fixme:shell:InitNetworkAddressControl stub 0154:fixme:kernelbase:AppPolicyGetThreadInitializationType FFFFFFFA, 039BFF08
https://bugs.winehq.org/show_bug.cgi?id=55945
--- Comment #6 from Vijay Kamuju infyquest@gmail.com --- It goes a bit further and crashes, we need to investigate it. So we need to raise a new bug for this or adjust the bug title.
https://bugs.winehq.org/show_bug.cgi?id=55945
--- Comment #7 from Jinoh Kang jinoh.kang.kr@gmail.com --- (In reply to Vijay Kamuju from comment #6)
It goes a bit further and crashes,
No. What immediately follows is a crash dump generation process. A lot of apps have unhandled exception filter. Contrary to popular belief, the "starting debugger" message isn't the only symptom of crashing.
we need to investigate it.
You don't need to investigate crash dump generation process.
So we need to raise a new bug for this or adjust the bug title.
It still crashes, so the bug summary is still valid.
https://bugs.winehq.org/show_bug.cgi?id=55945
Jinoh Kang jinoh.kang.kr@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|KakaoTalk crashes when |KakaoTalk crashes when |opening certain profiles: |opening certain profiles |unimplemented function |after calling |gdiplus.dll.GdipDrawImageFX |GdipDrawImageFX stub
--- Comment #8 from Jinoh Kang jinoh.kang.kr@gmail.com --- "Unimplemented function" could use some clarification, though. I adjusted the summary per your suggestion.
https://bugs.winehq.org/show_bug.cgi?id=55945
--- Comment #9 from Jinoh Kang jinoh.kang.kr@gmail.com --- It's also worth noting that the crash log *before* and *after* the stub patch is basically the same except for the "GdipDrawImageFX fixme" part.
This app had been picky about functions not actually doing what it expects. See bug 52673 for an example. In general, I wouldn't trust a stub to actually fix a crash until I have tested it...
https://bugs.winehq.org/show_bug.cgi?id=55945
--- Comment #10 from Esme Povirk madewokherd@gmail.com --- I'm noticing the "transform" and "effect" fields are NULL. The "effect" field is the hard part of this, so a semi-stub forwarding to GdipDrawImagePointsRect may work (though in the long run we will probably want to forward to some internal function that combines the capabilities of GdipDrawImagePointsRect with GdipDrawImageFX).
This will require some testing to find out what happens when those fields are NULL. It might result in an InvalidParameter error, or a NULL transform might be treated as an identity matrix.
https://bugs.winehq.org/show_bug.cgi?id=55945
Bartosz gang65@poczta.onet.pl changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |gang65@poczta.onet.pl
--- Comment #11 from Bartosz gang65@poczta.onet.pl --- Unfortunately I was not able to create account/login to KakaoTalk. Could you build Wine from branch: https://gitlab.winehq.org/gang65/wine/-/merge_requests/12
and check if it works for you?
https://bugs.winehq.org/show_bug.cgi?id=55945
--- Comment #12 from Jinoh Kang jinoh.kang.kr@gmail.com --- (In reply to Bartosz from comment #11)
Unfortunately I was not able to create account/login to KakaoTalk. Could you build Wine from branch: https://gitlab.winehq.org/gang65/wine/-/merge_requests/12
and check if it works for you?
Thanks! KakaoTalk 3.6.7.3673 no longer crashes with Wine downstream commit 1b2e775fd50288046893e9c62aebabd74f398d7e (https://gitlab.winehq.org/gang65/wine/-/commit/1b2e775fd50288046893e9c62aeba...):
0024:trace:gdiplus:GdipDrawImageFX (07E862A8, 0DDCB108, 0433EBD4, 00000000, 00000000, 0DDD4A90, 2) 0024:trace:gdiplus:GdipDrawImageFX (0DDD49D0, 0DDCB688, 0433EEF4, 00000000, 00000000, 0DDD44F8, 2) 0024:trace:gdiplus:GdipDrawImageFX (07E862A8, 07EEAB88, 0433EBD4, 00000000, 00000000, 0DDC6860, 2) 0024:trace:gdiplus:GdipDrawImageFX (07ECED48, 07EEAD08, 0433EEF4, 00000000, 00000000, 07ED5DF0, 2) 0024:trace:gdiplus:GdipDrawImageFX (07F71630, 07EEAD08, 0433EEC4, 00000000, 00000000, 07ED5DF0, 2)
However, the output doesn't match the expected rendering: the background for profile widgets are absent. I suppose that's just because gdiplus doesn't support creating effects:
0024:fixme:gdiplus:GdipDeleteEffect (00000000): stub 0024:fixme:gdiplus:GdipCreateEffect ({633c80a4-1843-482b-9ef2-be2834c5fdd4}, 0433F01C): stub 0024:fixme:gdiplus:GdipDeleteEffect (00000000): stub 0024:fixme:gdiplus:GdipCreateEffect ({633c80a4-1843-482b-9ef2-be2834c5fdd4}, 0433ECFC): stub 0024:fixme:gdiplus:GdipDeleteEffect (00000000): stub 0024:fixme:gdiplus:GdipCreateEffect ({633c80a4-1843-482b-9ef2-be2834c5fdd4}, 0433F01C): stub 0024:fixme:gdiplus:GdipDeleteEffect (00000000): stub 0024:fixme:gdiplus:GdipCreateEffect ({633c80a4-1843-482b-9ef2-be2834c5fdd4}, 0433EFEC): stub 0024:fixme:gdiplus:GdipDeleteEffect (00000000): stub
https://bugs.winehq.org/show_bug.cgi?id=55945
--- Comment #13 from Bartosz gang65@poczta.onet.pl --- Can you give some screenshots how it looks like with the patch, and how it looks like with installed native gdiplus:
winetricks gdiplus
https://bugs.winehq.org/show_bug.cgi?id=55945
--- Comment #14 from Jinoh Kang jinoh.kang.kr@gmail.com --- (In reply to Bartosz from comment #13)
Can you give some screenshots how it looks like with the patch, and how it looks like with installed native gdiplus:
winetricks gdiplus
I'm testing with profile pages of my acquaintances, which obviously contains private info that prevents me from sharing.
The main bug (crashing) has been resolved, so I don't think any further diagnosis is necessary here (I'll open a new bug).
That said, I'll try creating a fake profile just for testing when I've got time -- sadly, the messenger app requires ID verification as you might have noticed.
https://bugs.winehq.org/show_bug.cgi?id=55945
--- Comment #15 from Jinoh Kang jinoh.kang.kr@gmail.com --- Patch submitted: https://gitlab.winehq.org/wine/wine/-/merge_requests/4638
https://bugs.winehq.org/show_bug.cgi?id=55945
--- Comment #16 from Bartosz gang65@poczta.onet.pl --- 0024:fixme:gdiplus:GdipCreateEffect ({633c80a4-1843-482b-9ef2-be2834c5fdd4}, 0433F01C): stub
effect is a Blur Effect.
More information about GUID and this effect: https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-emfplus/18f...
So I think the images should be displayed correctly (as blur effect will not affect displaying).
Can you attach the full logs from running KakaoTalk application?
https://bugs.winehq.org/show_bug.cgi?id=55945
Jinoh Kang jinoh.kang.kr@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Blocks| |55990
--- Comment #17 from Jinoh Kang jinoh.kang.kr@gmail.com --- (In reply to Bartosz from comment #16)
0024:fixme:gdiplus:GdipCreateEffect ({633c80a4-1843-482b-9ef2-be2834c5fdd4}, 0433F01C): stub
effect is a Blur Effect.
More information about GUID and this effect: https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-emfplus/ 18f3cb09-8793-42e1-9337-b24794d4223c
So I think the images should be displayed correctly (as blur effect will not affect displaying).
Can you attach the full logs from running KakaoTalk application?
Further discussion not related to crashing (e.g., incorrect rendering) is moved to bug 55990.
https://bugs.winehq.org/show_bug.cgi?id=55945
--- Comment #18 from Vijay Kamuju infyquest@gmail.com --- I believe we can close this bug as the MR is now merged and its partially implemented.
https://bugs.winehq.org/show_bug.cgi?id=55945
Bartosz gang65@poczta.onet.pl changed:
What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |FIXED Status|UNCONFIRMED |RESOLVED
--- Comment #19 from Bartosz gang65@poczta.onet.pl --- The issue was fixed with commit: https://gitlab.winehq.org/wine/wine/-/commit/b12078d928cfe6767fd52c7419c45d7...
https://bugs.winehq.org/show_bug.cgi?id=55945
Jinoh Kang jinoh.kang.kr@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |b12078d928cfe6767fd52c7419c | |45d71136f8194
--- Comment #20 from Jinoh Kang jinoh.kang.kr@gmail.com --- Fixed in b12078d928cfe6767fd52c7419c45d71136f8194.
https://bugs.winehq.org/show_bug.cgi?id=55945
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #21 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 9.1.
https://bugs.winehq.org/show_bug.cgi?id=55945
Michael Stefaniuc mstefani@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|--- |9.0.x