[webkit-dev] About Win32/Cairo port
bfulgham at gmail.com
Wed Jun 3 15:11:30 PDT 2009
2009/5/15 Joonghoon Kim <lunaris at tmax.co.kr>:
> 3) I can't see context-menu localized strings, for
> CreateBundle() with WebKit.resources/ fails. It's due
> to Open CF-Lite. _CFGetFileProperties() returns -1
> for createFileA() fails.
> GetLastError() reports ERROR_ACCESS_DENIED.
> Anyone know why this happens?
I tracked down the cause of this problem. Updated DLL's are now
available from my iDisk (http://files.me.com/bfulgham/iay8p5), and the
SVN sources at the OpenCFLite
(http://sourceforge.net/projects/opencflite/) project include this
fix. We will produce an official download in a few days.
The problem turned out to be incorrect file handling. For reasons
locked in Microsoft's dark underbelly, the CreateFile call requires
that you pass the flag FILE_FLAG_BACKUP_SEMANTICS (instead of the more
obvious-seeming NULL used in all the example programs.) If you use
this flag, then it will create a file handle to the directory.
Correcting this bug opened up a ton of functionality in the Cairo
port, including access to the web inspector and a myriad of other
right-click (contextual) menu features.
Thanks for making me feel guilty enough to fix this -- I had no idea
how much cool stuff I was missing because of this long-standing bug.
More information about the webkit-dev