Michael Stefaniuc : dmband: Simplify dump_DMUS_OBJECTDESC() and move it to dmobject.c.

Alexandre Julliard julliard at winehq.org
Thu Dec 12 16:29:39 CST 2019


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

Author: Michael Stefaniuc <mstefani at winehq.org>
Date:   Thu Dec 12 01:10:58 2019 +0100

dmband: Simplify dump_DMUS_OBJECTDESC() and move it to dmobject.c.

Signed-off-by: Michael Stefaniuc <mstefani at winehq.org>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/dmband/band.c     |   2 +-
 dlls/dmband/dmobject.c |  53 ++++++++++++++++++++++++++
 dlls/dmband/dmobject.h |   1 +
 dlls/dmband/dmutils.c  | 100 +------------------------------------------------
 dlls/dmband/dmutils.h  |  14 -------
 5 files changed, 56 insertions(+), 114 deletions(-)

diff --git a/dlls/dmband/band.c b/dlls/dmband/band.c
index 53f407c1a4..901f5a69ee 100644
--- a/dlls/dmband/band.c
+++ b/dlls/dmband/band.c
@@ -158,7 +158,7 @@ static HRESULT WINAPI band_IDirectMusicObject_ParseDescriptor(IDirectMusicObject
     }
 
     TRACE("returning descriptor:\n");
-    debug_DMUS_OBJECTDESC(desc);
+    dump_DMUS_OBJECTDESC(desc);
     return S_OK;
 }
 
diff --git a/dlls/dmband/dmobject.c b/dlls/dmband/dmobject.c
index e0b7eafe25..9ea31ab32a 100644
--- a/dlls/dmband/dmobject.c
+++ b/dlls/dmband/dmobject.c
@@ -219,6 +219,59 @@ const char *debugstr_dmguid(const GUID *id) {
     return debugstr_guid(id);
 }
 
+void dump_DMUS_OBJECTDESC(DMUS_OBJECTDESC *desc)
+{
+    if (!desc || !TRACE_ON(dmfile))
+        return;
+
+    TRACE_(dmfile)("DMUS_OBJECTDESC (%p):", desc);
+    TRACE_(dmfile)(" - dwSize = %u\n", desc->dwSize);
+
+#define X(flag) if (desc->dwValidData & flag) TRACE_(dmfile)(#flag " ")
+    TRACE_(dmfile)(" - dwValidData = %#08x ( ", desc->dwValidData);
+    X(DMUS_OBJ_OBJECT);
+    X(DMUS_OBJ_CLASS);
+    X(DMUS_OBJ_NAME);
+    X(DMUS_OBJ_CATEGORY);
+    X(DMUS_OBJ_FILENAME);
+    X(DMUS_OBJ_FULLPATH);
+    X(DMUS_OBJ_URL);
+    X(DMUS_OBJ_VERSION);
+    X(DMUS_OBJ_DATE);
+    X(DMUS_OBJ_LOADED);
+    X(DMUS_OBJ_MEMORY);
+    X(DMUS_OBJ_STREAM);
+    TRACE_(dmfile)(")\n");
+#undef X
+
+    if (desc->dwValidData & DMUS_OBJ_CLASS)
+        TRACE_(dmfile)(" - guidClass = %s\n", debugstr_dmguid(&desc->guidClass));
+    if (desc->dwValidData & DMUS_OBJ_OBJECT)
+        TRACE_(dmfile)(" - guidObject = %s\n", debugstr_guid(&desc->guidObject));
+
+    if (desc->dwValidData & DMUS_OBJ_DATE) {
+        SYSTEMTIME time;
+        FileTimeToSystemTime(&desc->ftDate, &time);
+        TRACE_(dmfile)(" - ftDate = \'%04u-%02u-%02u %02u:%02u:%02u\'\n",
+                time.wYear, time.wMonth, time.wDay, time.wHour, time.wMinute, time.wSecond);
+    }
+    if (desc->dwValidData & DMUS_OBJ_VERSION)
+        TRACE_(dmfile)(" - vVersion = \'%u,%u,%u,%u\'\n",
+                HIWORD(desc->vVersion.dwVersionMS), LOWORD(desc->vVersion.dwVersionMS),
+                HIWORD(desc->vVersion.dwVersionLS), LOWORD(desc->vVersion.dwVersionLS));
+    if (desc->dwValidData & DMUS_OBJ_NAME)
+        TRACE_(dmfile)(" - wszName = %s\n", debugstr_w(desc->wszName));
+    if (desc->dwValidData & DMUS_OBJ_CATEGORY)
+        TRACE_(dmfile)(" - wszCategory = %s\n", debugstr_w(desc->wszCategory));
+    if (desc->dwValidData & DMUS_OBJ_FILENAME)
+        TRACE_(dmfile)(" - wszFileName = %s\n", debugstr_w(desc->wszFileName));
+    if (desc->dwValidData & DMUS_OBJ_MEMORY)
+        TRACE_(dmfile)(" - llMemLength = 0x%s - pbMemData = %p\n",
+                wine_dbgstr_longlong(desc->llMemLength), desc->pbMemData);
+    if (desc->dwValidData & DMUS_OBJ_STREAM)
+        TRACE_(dmfile)(" - pStream = %p\n", desc->pStream);
+}
+
 
 /* RIFF format parsing */
 #define CHUNK_HDR_SIZE (sizeof(FOURCC) + sizeof(DWORD))
diff --git a/dlls/dmband/dmobject.h b/dlls/dmband/dmobject.h
index 1354553665..d347020691 100644
--- a/dlls/dmband/dmobject.h
+++ b/dlls/dmband/dmobject.h
@@ -108,6 +108,7 @@ HRESULT WINAPI unimpl_IPersistStream_GetSizeMax(IPersistStream *iface,
 /* Debugging helpers */
 const char *debugstr_chunk(const struct chunk_entry *chunk) DECLSPEC_HIDDEN;
 const char *debugstr_dmguid(const GUID *id) DECLSPEC_HIDDEN;
+void dump_DMUS_OBJECTDESC(DMUS_OBJECTDESC *desc) DECLSPEC_HIDDEN;
 
 static inline const char *debugstr_fourcc(DWORD fourcc)
 {
diff --git a/dlls/dmband/dmutils.c b/dlls/dmband/dmutils.c
index 39d6358211..c676775d35 100644
--- a/dlls/dmband/dmutils.c
+++ b/dlls/dmband/dmutils.c
@@ -44,84 +44,6 @@
 
 WINE_DEFAULT_DEBUG_CHANNEL(dmfile);
 
-/* generic flag-dumping function */
-static const char* debugstr_flags (DWORD flags, const flag_info* names, size_t num_names){
-	static char buffer[128] = "", *ptr = &buffer[0];
-	unsigned int i;
-	int size = sizeof(buffer);
-
-	for (i=0; i < num_names; i++) {
-		if ((flags & names[i].val)) {
-			int cnt = snprintf(ptr, size, "%s ", names[i].name);
-			if (cnt < 0 || cnt >= size) break;
-			size -= cnt;
-			ptr += cnt;
-		}
-	}
-
-	ptr = &buffer[0];
-	return ptr;
-}
-
-/* dump DMUS_OBJ flags */
-static const char *debugstr_DMUS_OBJ_FLAGS (DWORD flagmask) {
-    static const flag_info flags[] = {
-	    FE(DMUS_OBJ_OBJECT),
-	    FE(DMUS_OBJ_CLASS),
-	    FE(DMUS_OBJ_NAME),
-	    FE(DMUS_OBJ_CATEGORY),
-	    FE(DMUS_OBJ_FILENAME),
-	    FE(DMUS_OBJ_FULLPATH),
-	    FE(DMUS_OBJ_URL),
-	    FE(DMUS_OBJ_VERSION),
-	    FE(DMUS_OBJ_DATE),
-	    FE(DMUS_OBJ_LOADED),
-	    FE(DMUS_OBJ_MEMORY),
-	    FE(DMUS_OBJ_STREAM)
-	};
-    return debugstr_flags(flagmask, flags, ARRAY_SIZE(flags));
-}
-
-/* month number into month name (for debugstr_filetime) */
-static const char *debugstr_month (DWORD dwMonth) {
-	switch (dwMonth) {
-		case 1: return "January";
-		case 2: return "February";
-		case 3: return "March";
-		case 4: return "April";
-		case 5: return "May";
-		case 6: return "June";
-		case 7: return "July";
-		case 8: return "August";
-		case 9: return "September";
-		case 10: return "October";
-		case 11: return "November";
-		case 12: return "December";
-		default: return "Invalid";
-	}
-}
-
-/* FILETIME struct to string conversion for debug messages */
-static const char *debugstr_filetime (const FILETIME *time) {
-	SYSTEMTIME sysTime;
-
-	if (!time) return "'null'";
-
-	FileTimeToSystemTime (time, &sysTime);
-
-	return wine_dbg_sprintf ("\'%02i. %s %04i %02i:%02i:%02i\'",
-		sysTime.wDay, debugstr_month(sysTime.wMonth), sysTime.wYear,
-		sysTime.wHour, sysTime.wMinute, sysTime.wSecond);
-}
-
-/* DMUS_VERSION struct to string conversion for debug messages */
-static const char *debugstr_dmversion (const DMUS_VERSION *version) {
-	if (!version) return "'null'";
-	return wine_dbg_sprintf ("\'%i,%i,%i,%i\'",
-		HIWORD(version->dwVersionMS),LOWORD(version->dwVersionMS),
-		HIWORD(version->dwVersionLS), LOWORD(version->dwVersionLS));
-}
-
 HRESULT IDirectMusicUtils_IPersistStream_ParseDescGeneric (DMUS_PRIVATE_CHUNK* pChunk, IStream* pStm, LPDMUS_OBJECTDESC pDesc) {
 
   switch (pChunk->fccID) {
@@ -278,7 +200,7 @@ HRESULT IDirectMusicUtils_IPersistStream_ParseReference (LPPERSISTSTREAM iface,
 
   TRACE("** DM Reference Begin of Load ***\n");
   TRACE("With Desc:\n");
-  debug_DMUS_OBJECTDESC(&ref_desc);
+  dump_DMUS_OBJECTDESC(&ref_desc);
 
   {
     LPDIRECTMUSICGETLOADER pGetLoader = NULL;
@@ -295,23 +217,3 @@ HRESULT IDirectMusicUtils_IPersistStream_ParseReference (LPPERSISTSTREAM iface,
 
   return hr;
 }
-
-void debug_DMUS_OBJECTDESC (LPDMUS_OBJECTDESC pDesc) {
-	if (pDesc) {
-		TRACE("DMUS_OBJECTDESC (%p):\n", pDesc);
-                TRACE(" - dwSize = %d\n", pDesc->dwSize);
-                TRACE(" - dwValidData = %s\n", debugstr_DMUS_OBJ_FLAGS (pDesc->dwValidData));
-                if (pDesc->dwValidData & DMUS_OBJ_NAME)     TRACE(" - wszName = %s\n", debugstr_w(pDesc->wszName));
-                if (pDesc->dwValidData & DMUS_OBJ_CLASS)    TRACE(" - guidClass = %s\n", debugstr_dmguid(&pDesc->guidClass));
-                if (pDesc->dwValidData & DMUS_OBJ_OBJECT)   TRACE(" - guidObject = %s\n", debugstr_guid(&pDesc->guidObject));
-                if (pDesc->dwValidData & DMUS_OBJ_DATE)     TRACE(" - ftDate = %s\n", debugstr_filetime(&pDesc->ftDate));
-                if (pDesc->dwValidData & DMUS_OBJ_VERSION)  TRACE(" - vVersion = %s\n", debugstr_dmversion(&pDesc->vVersion));
-                if (pDesc->dwValidData & DMUS_OBJ_CATEGORY) TRACE(" - wszCategory = %s\n", debugstr_w(pDesc->wszCategory));
-                if (pDesc->dwValidData & DMUS_OBJ_FILENAME) TRACE(" - wszFileName = %s\n", debugstr_w(pDesc->wszFileName));
-                if (pDesc->dwValidData & DMUS_OBJ_MEMORY)   TRACE(" - llMemLength = 0x%s - pbMemData = %p\n",
-		                                                wine_dbgstr_longlong(pDesc->llMemLength), pDesc->pbMemData);
-                if (pDesc->dwValidData & DMUS_OBJ_STREAM)   TRACE(" - pStream = %p\n", pDesc->pStream);
-	} else {
-		TRACE("(NULL)\n");
-	}
-}
diff --git a/dlls/dmband/dmutils.h b/dlls/dmband/dmutils.h
index dfa8ac46d6..2f13c4b1f4 100644
--- a/dlls/dmband/dmutils.h
+++ b/dlls/dmband/dmutils.h
@@ -34,18 +34,4 @@ extern HRESULT IDirectMusicUtils_IPersistStream_ParseDescGeneric (DMUS_PRIVATE_C
 extern HRESULT IDirectMusicUtils_IPersistStream_ParseUNFOGeneric (DMUS_PRIVATE_CHUNK* pChunk, IStream* pStm, LPDMUS_OBJECTDESC pDesc) DECLSPEC_HIDDEN;
 extern HRESULT IDirectMusicUtils_IPersistStream_ParseReference (LPPERSISTSTREAM iface, DMUS_PRIVATE_CHUNK* pChunk, IStream* pStm, IDirectMusicObject** ppObject) DECLSPEC_HIDDEN;
 
-/**
- * Debug utilities
- */
-/* used for generic dumping (copied from ddraw) */
-typedef struct {
-    DWORD val;
-    const char* name;
-} flag_info;
-
-/* used for initialising structs */
-#define FE(x) { x, #x }	
-
-extern void        debug_DMUS_OBJECTDESC (LPDMUS_OBJECTDESC pDesc) DECLSPEC_HIDDEN;
-
 #endif /* __WINE_DMUTILS_H */




More information about the wine-cvs mailing list