[ros-diffs] [cwittich] 38599: -Dmitry Timoshkov <dmitry <at> codeweavers.com> Mon Nov 10 2008 widl: Make the generated string pointers const as well. -Alexandre Julliard <julliard <at> winehq.org> Tue Nov 25 2008 widl: Make sure format strings for structure and union types are only output once.

cwittich at svn.reactos.org cwittich at svn.reactos.org
Tue Jan 6 07:16:56 CET 2009


Author: cwittich
Date: Tue Jan  6 00:16:55 2009
New Revision: 38599

URL: http://svn.reactos.org/svn/reactos?rev=38599&view=rev
Log:
-Dmitry Timoshkov <dmitry <at> codeweavers.com> Mon Nov 10 2008
widl: Make the generated string pointers const as well.

-Alexandre Julliard <julliard <at> winehq.org> Tue Nov 25 2008
widl: Make sure format strings for structure and union types are only output once.

Modified:
    trunk/reactos/tools/widl/typegen.c

Modified: trunk/reactos/tools/widl/typegen.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/tools/widl/typegen.c?rev=38599&r1=38598&r2=38599&view=diff
==============================================================================
--- trunk/reactos/tools/widl/typegen.c [iso-8859-1] (original)
+++ trunk/reactos/tools/widl/typegen.c [iso-8859-1] Tue Jan  6 00:16:55 2009
@@ -1866,8 +1866,9 @@
            nothing is written to file yet.  On the actual writing pass,
            this will have been updated.  */
         unsigned int absoff = type->ptrdesc ? type->ptrdesc : *tfsoff;
-        short reloff = absoff - *tfsoff;
-        print_file(file, 2, "NdrFcShort(0x%hx),\t/* Offset= %hd (%u) */\n",
+        int reloff = absoff - *tfsoff;
+        assert( reloff >= 0 );
+        print_file(file, 2, "NdrFcShort(0x%x),\t/* Offset= %d (%u) */\n",
                    reloff, reloff, absoff);
         *tfsoff += 2;
     }
@@ -2255,6 +2256,8 @@
         /* basic types don't need a type format string */
         if (is_base_type(type->type))
             return 0;
+
+        if (processed(type)) return type->typestring_offset;
 
         switch (type->type)
         {
@@ -3351,7 +3354,7 @@
     const char *p;
 
     /* this should be an array of RPC_PROTSEQ_ENDPOINT but we want const strings */
-    print_file( f, 0, "static const unsigned char * %s__RpcProtseqEndpoint[][2] =\n{\n", prefix );
+    print_file( f, 0, "static const unsigned char * const %s__RpcProtseqEndpoint[][2] =\n{\n", prefix );
     LIST_FOR_EACH_ENTRY( endpoint, list, const struct str_list_entry_t, entry )
     {
         print_file( f, 1, "{ (const unsigned char *)\"" );



More information about the Ros-diffs mailing list