[webkit-help] Exceptions in WinCairo XP
Brent Fulgham
bfulgham at gmail.com
Sat Jan 21 11:22:51 PST 2012
Hi Anthony,
Thanks for tracking down this problem. I have not seen this myself, since I don't delay-load WebKit.
On Jan 20, 2012, at 10:41 PM, Anthony Johnson wrote:
> Regarding my last post, here's what I've found since then. The code is actually getting into lookup_composite_function(), but it's throwing the exception on the first statement inside lookup_composite_function(), at line 367 in pixman.c:
>
> /* Check cache for fast paths */
> cache = PIXMAN_GET_THREAD_LOCAL (fast_path_cache);
>
> The exception happens because the variable fast_path_cache is declared as __declspec(thread), i.e. thread local storage, and also because WinLauncher was fairly recently changed to delay load the Webkit dll. According to MSDN, "The use of the thread attribute may interfere with delay loading of DLL imports." It goes on to describe this
The correct fix for this, which I will commit to the WinCairoRequirements bundle (hopefully tonight some time) is to build Pixman and Cairo using pthreads, rather than native Windows threads. This fix has been confirmed by another user, and I think it will resolve your problem.
Thanks for your help, and please contact me with any further problems you encounter. I don't run any XP boxes anymore, so I rely on folk like you to find these problems.
Thanks,
-Brent
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-help/attachments/20120121/eb04c118/attachment.html>
More information about the webkit-help
mailing list