Alexandre Julliard : widl: Output registration information also for IUnknown.
Alexandre Julliard
julliard at winehq.org
Sun Dec 5 12:10:04 CST 2010
Module: wine
Branch: master
Commit: 2f5c578dba3c756ac77582ecac5e1383127dd12a
URL: http://source.winehq.org/git/wine.git/?a=commit;h=2f5c578dba3c756ac77582ecac5e1383127dd12a
Author: Alexandre Julliard <julliard at winehq.org>
Date: Fri Dec 3 19:29:43 2010 +0100
widl: Output registration information also for IUnknown.
---
tools/widl/register.c | 9 +++++++--
1 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/tools/widl/register.c b/tools/widl/register.c
index 34f48fe..e3d3875 100644
--- a/tools/widl/register.c
+++ b/tools/widl/register.c
@@ -65,9 +65,14 @@ static int write_interface( const type_t *iface )
{
const UUID *uuid = get_attrp( iface->attrs, ATTR_UUID );
- if (!type_iface_get_inherit( iface )) return 0;
- if (!need_proxy( iface )) return 0;
if (!uuid) return 0;
+ if (!is_object( iface )) return 0;
+ if (!type_iface_get_inherit(iface)) /* special case for IUnknown */
+ {
+ put_str( indent, "ForceRemove '%s' = s '%s'\n", format_uuid( uuid ), iface->name );
+ return 0;
+ }
+ if (is_local( iface->attrs )) return 0;
put_str( indent, "ForceRemove '%s' = s '%s'\n", format_uuid( uuid ), iface->name );
put_str( indent, "{\n" );
indent++;
More information about the wine-cvs
mailing list