Zebediah Figura : msi: Rewrite dump_record().
Alexandre Julliard
julliard at winehq.org
Tue Jul 11 15:59:32 CDT 2017
Module: wine
Branch: master
Commit: f348c7c04c04946935e5bd4e10c7438fb69a9cd2
URL: http://source.winehq.org/git/wine.git/?a=commit;h=f348c7c04c04946935e5bd4e10c7438fb69a9cd2
Author: Zebediah Figura <z.figura12 at gmail.com>
Date: Tue Jul 11 00:18:32 2017 -0500
msi: Rewrite dump_record().
Signed-off-by: Zebediah Figura <z.figura12 at gmail.com>
Signed-off-by: Hans Leidekker <hans at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/msi/msipriv.h | 1 +
dlls/msi/package.c | 1 +
dlls/msi/record.c | 25 +++++++++++++++++++++++++
dlls/msi/table.c | 19 -------------------
4 files changed, 27 insertions(+), 19 deletions(-)
diff --git a/dlls/msi/msipriv.h b/dlls/msi/msipriv.h
index 71a0873..600800c 100644
--- a/dlls/msi/msipriv.h
+++ b/dlls/msi/msipriv.h
@@ -840,6 +840,7 @@ extern BOOL MSI_RecordsAreEqual( MSIRECORD *, MSIRECORD * ) DECLSPEC_HIDDEN;
extern BOOL MSI_RecordsAreFieldsEqual(MSIRECORD *a, MSIRECORD *b, UINT field) DECLSPEC_HIDDEN;
extern UINT msi_record_set_string(MSIRECORD *, UINT, const WCHAR *, int) DECLSPEC_HIDDEN;
extern const WCHAR *msi_record_get_string(const MSIRECORD *, UINT, int *) DECLSPEC_HIDDEN;
+extern void dump_record(MSIRECORD *) DECLSPEC_HIDDEN;
/* stream internals */
extern void enum_stream_names( IStorage *stg ) DECLSPEC_HIDDEN;
diff --git a/dlls/msi/package.c b/dlls/msi/package.c
index f1d7eff..6c24f61 100644
--- a/dlls/msi/package.c
+++ b/dlls/msi/package.c
@@ -1860,6 +1860,7 @@ INT MSI_ProcessMessageVerbatim(MSIPACKAGE *package, INSTALLMESSAGE eMessageType,
char *msg;
TRACE("%x\n", eMessageType);
+ if (TRACE_ON(msi)) dump_record(record);
if ((eMessageType & 0xff000000) == INSTALLMESSAGE_FATALEXIT)
log_type |= INSTALLLOGMODE_FATALEXIT;
diff --git a/dlls/msi/record.c b/dlls/msi/record.c
index 39ef70f..de45191 100644
--- a/dlls/msi/record.c
+++ b/dlls/msi/record.c
@@ -1077,3 +1077,28 @@ WCHAR *msi_dup_record_field( MSIRECORD *rec, INT field )
}
return str;
}
+
+void dump_record(MSIRECORD *rec)
+{
+ int i;
+ if (!rec)
+ {
+ TRACE("(null)\n");
+ return;
+ }
+
+ TRACE("[");
+ for (i = 0; i <= rec->count; i++)
+ {
+ switch(rec->fields[i].type)
+ {
+ case MSIFIELD_NULL: TRACE("(null)"); break;
+ case MSIFIELD_INT: TRACE("%d", rec->fields[i].u.iVal); break;
+ case MSIFIELD_WSTR: TRACE("%s", debugstr_w(rec->fields[i].u.szwVal)); break;
+ case MSIFIELD_INTPTR: TRACE("%ld", rec->fields[i].u.pVal); break;
+ case MSIFIELD_STREAM: TRACE("%p", rec->fields[i].u.stream); break;
+ }
+ if (i < rec->count) TRACE(", ");
+ }
+ TRACE("]\n");
+}
diff --git a/dlls/msi/table.c b/dlls/msi/table.c
index b364d97..45a1814 100644
--- a/dlls/msi/table.c
+++ b/dlls/msi/table.c
@@ -2410,25 +2410,6 @@ static MSIRECORD *msi_get_transform_record( const MSITABLEVIEW *tv, const string
return rec;
}
-static void dump_record( MSIRECORD *rec )
-{
- UINT i, n;
-
- n = MSI_RecordGetFieldCount( rec );
- for( i=1; i<=n; i++ )
- {
- int len;
- const WCHAR *sval;
-
- if( MSI_RecordIsNull( rec, i ) )
- TRACE("row -> []\n");
- else if( (sval = msi_record_get_string( rec, i, &len )) )
- TRACE("row -> [%s]\n", debugstr_wn(sval, len));
- else
- TRACE("row -> [0x%08x]\n", MSI_RecordGetInteger( rec, i ) );
- }
-}
-
static void dump_table( const string_table *st, const USHORT *rawdata, UINT rawsize )
{
UINT i;
More information about the wine-cvs
mailing list