https://bugs.winehq.org/show_bug.cgi?id=49379
Bug ID: 49379 Summary: d2d1.dll.D2D1CreateDevice is unimplemented Product: Wine Version: 5.10 Hardware: x86 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: d2d Assignee: wine-bugs@winehq.org Reporter: me+wine@shane.sh Distribution: ---
Created attachment 67439 --> https://bugs.winehq.org/attachment.cgi?id=67439 The crash report generated by Altium
I'm trying to get Altium Designer 20 running in wine. I'm using wine-staging 5.10 with the msxml6 and dotnet461 winetricks. These are necessary to get the application to start (and wine-staging because it includes a fix for https://bugs.winehq.org/show_bug.cgi?id=46568).
However, the problem is that when I try to actually open a file, it crashes with the following being printed to STDERR:
wine: Call from 0x7b0317a8 to unimplemented function d2d1.dll.D2D1CreateDevice, aborting
Altium's own crash report seems to confirm that this is the problem (attached).
I don't really know anything about DirectX, or Windows programming at all, but I don't think it should be too hard to implement this stub. Wine's dlls/d2d1/device.c does have a function called d2d_device_init, and my guess would be that D2D1CreateDevice would mostly just be a wrapper around that. But my naive attempt to implement that didn't work so it's quite likely I'm missing something important.
Any help would be appreciated.
https://bugs.winehq.org/show_bug.cgi?id=49379
--- Comment #1 from Nikolay Sivov bunglehead@gmail.com --- Hi,
it should create a factory internally, using given threading and debug mode (or derive threading mode from d3d device as docs suggest). Then you create d2d device from that factory.
Are you working on this? If not I could probably send some patches.
https://bugs.winehq.org/show_bug.cgi?id=49379
--- Comment #2 from Shane me+wine@shane.sh --- I'm not working on this currently.
I did make an attempt but I'm a bit in over my head to be honest. I'd be very grateful if you could make some patches for this!
https://bugs.winehq.org/show_bug.cgi?id=49379
--- Comment #3 from Shane me+wine@shane.sh --- Wait, I think I might actually know how to do this! I see now why my attempt before didn't work. I think I'll have one more go at this.
https://bugs.winehq.org/show_bug.cgi?id=49379
--- Comment #4 from Shane me+wine@shane.sh --- I got a little bit further this time. But now there is an error E_NOINTERFACE that seemingly gets thrown from CreateDxgiSurfaceRenderTarget. I don't really know what I'm doing, I'm confused by the fact there seems to be multiple versions of all the different interfaces and I may have messed something up there. In any case I'd really appreciate if you could have a go at making a patch for this.
Thank you!
https://bugs.winehq.org/show_bug.cgi?id=49379
--- Comment #5 from Nikolay Sivov bunglehead@gmail.com --- Created attachment 67460 --> https://bugs.winehq.org/attachment.cgi?id=67460 patch
Please try this.
https://bugs.winehq.org/show_bug.cgi?id=49379
--- Comment #6 from Shane me+wine@shane.sh --- Thanks, I really appreciate that.
Unfortunately it has the same problem that my attempt did, but it seems that that's probably a different issue.
I'll open another issue for the crash I'm getting now.
https://bugs.winehq.org/show_bug.cgi?id=49379
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|d2d1.dll.D2D1CreateDevice |Altium Designer 20 crashes |is unimplemented |on missing | |d2d1.dll.D2D1CreateDevice
https://bugs.winehq.org/show_bug.cgi?id=49379
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Fixed by SHA1| |f7f800606465727bc4e5f62bda3 | |c4e89b4723b0b Resolution|--- |FIXED
--- Comment #7 from Nikolay Sivov bunglehead@gmail.com --- Marking fixed f7f800606465727bc4e5f62bda3c4e89b4723b0b.
https://bugs.winehq.org/show_bug.cgi?id=49379
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #8 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 5.11.
https://bugs.winehq.org/show_bug.cgi?id=49379
Michael Stefaniuc mstefani@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|--- |5.0.x
https://bugs.winehq.org/show_bug.cgi?id=49379
Michael Stefaniuc mstefani@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|5.0.x |---
--- Comment #9 from Michael Stefaniuc mstefani@winehq.org --- Removing the 5.0.x milestone from bug fixes included in 5.0.3.