Allocate another 4 bytes for unique pointers to simple types.
This fixes bug #1048.
Modified: trunk/reactos/tools/widl/ChangeLog
Modified: trunk/reactos/tools/widl/client.c
Modified: trunk/reactos/tools/widl/server.c

Modified: trunk/reactos/tools/widl/ChangeLog
--- trunk/reactos/tools/widl/ChangeLog	2005-11-26 11:43:31 UTC (rev 19631)
+++ trunk/reactos/tools/widl/ChangeLog	2005-11-26 11:44:06 UTC (rev 19632)
@@ -1,5 +1,12 @@
 ChangeLog
 
+2005-11-26 ekohl
+
+   tools/widl/client.c
+   tools/widl/server.c
+
+- Allocate another 4 bytes for unique pointers to simple types.
+
 2005-10-16 ekohl
 
    tools/widl/client.c

Modified: trunk/reactos/tools/widl/client.c
--- trunk/reactos/tools/widl/client.c	2005-11-26 11:43:31 UTC (rev 19631)
+++ trunk/reactos/tools/widl/client.c	2005-11-26 11:44:06 UTC (rev 19632)
@@ -731,6 +731,9 @@
                                   __FUNCTION__,__LINE__, var->type->type);
                             return;
                         }
+
+                        if (unique_attr)
+                            size += 4;
                     }
                     else
                     {

Modified: trunk/reactos/tools/widl/server.c
--- trunk/reactos/tools/widl/server.c	2005-11-26 11:43:31 UTC (rev 19631)
+++ trunk/reactos/tools/widl/server.c	2005-11-26 11:44:06 UTC (rev 19632)
@@ -649,6 +649,7 @@
             out_attr = is_attr(var->attrs, ATTR_OUT);
             string_attr = is_attr(var->attrs, ATTR_STRING);
             sizeis_attr = get_attrp(var->attrs, ATTR_SIZEIS);
+            unique_attr = is_attr(var->attrs, ATTR_UNIQUE);
 
             if (out_attr)
             {
@@ -708,6 +709,11 @@
                                   __FUNCTION__,__LINE__, var->type->type);
                             return;
                         }
+
+                        if (unique_attr)
+                        {
+                            size += 4;
+                        }
                     }
                 }
                 else if (var->type->type == RPC_FC_RP)