oleaut32: Resolve embedded unnamed TypeLib dependencies using their GUID.

Nikolay Sivov bunglehead at gmail.com
Fri Feb 7 23:04:20 CST 2014


On 2/8/2014 03:27, guillaume.charifi at sfr.fr wrote:
> This patch is designed to fix the bug: 
> http://bugs.winehq.org/show_bug.cgi?id=34184
> It appears that while the dependency checking of a TypeLib is being 
> processed, some programs have the requested TypeLib in their Resource 
> section/TYPELIB. Before this patch, the behavior was to look for the 
> TLB on the disk, using the name provided. Obviously, when it is 
> embedded into the program, the function fails everytime. Now, 
> considering the GUID in place of the TLB name, and searching into the 
> Resource section, the TLB is correctly loaded.
> This is what happens with Skype's "uc.tlb", whose name is only 
> referenced in the TLB skControl, and nowhere else. Using instead the 
> GUID, we are able to find and load the unnamed "uc.tlb" from the 
> program resources.
>
> ---
>  dlls/oleaut32/typelib.c 193 
> +++++++++++++++++++++++++++++++++++++++++++++++-
>  1 file changed, 192 insertions(+), 1 deletion(-)
>
We already have a code to load from resource section, it should be 
reused instead of duplicating it like this. Also a test would be nice.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.winehq.org/pipermail/wine-devel/attachments/20140208/ca93b685/attachment-0001.html>


More information about the wine-devel mailing list