msi: print skipped actions

Aric Stewart aric at codeweavers.com
Thu Jun 2 08:14:51 CDT 2005


Print a message for skipped actions in ProcessExecSequence like in the 
UISequence.
-------------- next part --------------
Index: dlls//msi/action.c
===================================================================
RCS file: /home/wine/wine/dlls/msi/action.c,v
retrieving revision 1.127
diff -u -r1.127 action.c
--- dlls//msi/action.c	2 Jun 2005 10:29:57 -0000	1.127
+++ dlls//msi/action.c	2 Jun 2005 12:57:10 -0000
@@ -1193,6 +1193,15 @@
                 break;
             }
 
+            sz=0x100;
+            rc =  MSI_RecordGetStringW(row,1,buffer,&sz);
+            if (rc != ERROR_SUCCESS)
+            {
+                ERR("Error is %x\n",rc);
+                msiobj_release(&row->hdr);
+                break;
+            }
+
             /* check conditions */
             if (!MSI_RecordIsNull(row,2))
             {
@@ -1207,6 +1216,8 @@
                     {
                         HeapFree(GetProcessHeap(),0,cond);
                         msiobj_release(&row->hdr);
+                        TRACE("Skipping action: %s (condition is false)\n",
+                                    debugstr_w(buffer));
                         continue; 
                     }
                     else
@@ -1214,15 +1225,6 @@
                 }
             }
 
-            sz=0x100;
-            rc =  MSI_RecordGetStringW(row,1,buffer,&sz);
-            if (rc != ERROR_SUCCESS)
-            {
-                ERR("Error is %x\n",rc);
-                msiobj_release(&row->hdr);
-                break;
-            }
-
             rc = ACTION_PerformAction(package,buffer, FALSE);
 
             if (rc == ERROR_FUNCTION_NOT_CALLED)



More information about the wine-patches mailing list