Rob Shearman : widl: A structure with variance, but without conformance should be a complex struct instead of a conformant , varying struct.

Alexandre Julliard julliard at wine.codeweavers.com
Thu May 31 08:33:37 CDT 2007


Module: wine
Branch: master
Commit: f198dcf09b6cdc6a3916145054244156f11b78f0
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=f198dcf09b6cdc6a3916145054244156f11b78f0

Author: Rob Shearman <rob at codeweavers.com>
Date:   Wed May 30 22:42:03 2007 +0100

widl: A structure with variance, but without conformance should be a complex struct instead of a conformant, varying struct.

---

 tools/widl/parser.y |    7 ++++++-
 1 files changed, 6 insertions(+), 1 deletions(-)

diff --git a/tools/widl/parser.y b/tools/widl/parser.y
index 27ac1c6..80e3ff7 100644
--- a/tools/widl/parser.y
+++ b/tools/widl/parser.y
@@ -1622,7 +1622,12 @@ static int get_struct_type(var_list_t *fields)
   }
 
   if( has_variance )
-    return RPC_FC_CVSTRUCT;
+  {
+    if ( has_conformance )
+      return RPC_FC_CVSTRUCT;
+    else
+      return RPC_FC_BOGUS_STRUCT;
+  }
   if( has_conformance && has_pointer )
     return RPC_FC_CPSTRUCT;
   if( has_conformance )




More information about the wine-cvs mailing list