[vlc-devel] commit: Use object address for logging - fixes uniqueness problems ( Rémi Denis-Courmont )

git version control git at videolan.org
Sat Sep 20 16:25:55 CEST 2008


vlc | branch: master | Rémi Denis-Courmont <rdenis at simphalempin.com> | Sat Sep 20 15:06:03 2008 +0300| [29a0b6307a5db17a02cf277a9eb7980382ad3a79] | committer: Rémi Denis-Courmont 

Use object address for logging - fixes uniqueness problems

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=29a0b6307a5db17a02cf277a9eb7980382ad3a79
---

 include/vlc_messages.h               |    2 +-
 modules/gui/qt4/dialogs/messages.cpp |    4 +-
 src/misc/messages.c                  |   49 +++++++++-------------------------
 3 files changed, 16 insertions(+), 39 deletions(-)

diff --git a/include/vlc_messages.h b/include/vlc_messages.h
index 25ec167..4162aa1 100644
--- a/include/vlc_messages.h
+++ b/include/vlc_messages.h
@@ -48,7 +48,7 @@
 typedef struct
 {
     int     i_type;                             /**< message type, see below */
-    int     i_object_id;
+    uintptr_t   i_object_id;
     const char *psz_object_type;
     char *  psz_module;
     char *  psz_msg;                            /**< the message itself */
diff --git a/modules/gui/qt4/dialogs/messages.cpp b/modules/gui/qt4/dialogs/messages.cpp
index 6f9cfab..5abd1a8 100644
--- a/modules/gui/qt4/dialogs/messages.cpp
+++ b/modules/gui/qt4/dialogs/messages.cpp
@@ -211,10 +211,10 @@ void MessagesDialog::buildTree( QTreeWidgetItem *parentItem,
     if( p_obj->psz_object_name )
         item->setText( 0, qfu( p_obj->psz_object_type ) + " \"" +
                        qfu( p_obj->psz_object_name ) + "\" (" +
-                       QString::number(p_obj->i_object_id) + ")" );
+                       QString::number((uintptr_t)p_obj) + ")" );
     else
         item->setText( 0, qfu( p_obj->psz_object_type ) + " (" +
-                       QString::number(p_obj->i_object_id) + ")" );
+                       QString::number((uintptr_t)p_obj) + ")" );
 
     item->setExpanded( true );
 
diff --git a/src/misc/messages.c b/src/misc/messages.c
index f2fe5a9..ed866dc 100644
--- a/src/misc/messages.c
+++ b/src/misc/messages.c
@@ -477,7 +477,7 @@ static void QueueMsg( vlc_object_t *p_this, int i_type, const char *psz_module,
             p_queue->i_stop = (p_queue->i_stop + 1) % VLC_MSG_QSIZE;
 
             p_item->i_type =        VLC_MSG_WARN;
-            p_item->i_object_id =   p_this->i_object_id;
+            p_item->i_object_id =   (uintptr_t)p_this;
             p_item->psz_object_type = p_this->psz_object_type;
             p_item->psz_module =    strdup( "message" );
             p_item->psz_msg =       strdup( "message queue overflowed" );
@@ -498,7 +498,7 @@ static void QueueMsg( vlc_object_t *p_this, int i_type, const char *psz_module,
 
     /* Fill message information fields */
     p_item->i_type =        i_type;
-    p_item->i_object_id =   p_this->i_object_id;
+    p_item->i_object_id =   (uintptr_t)p_this;
     p_item->psz_object_type = p_this->psz_object_type;
     p_item->psz_module =    strdup( psz_module );
     p_item->psz_msg =       psz_str;
@@ -635,40 +635,17 @@ static void PrintMsg ( vlc_object_t * p_this, msg_item_t * p_item )
 
 #else
     /* Send the message to stderr */
-    if( priv->b_color )
-    {
-        if( p_item->psz_header )
-        {
-            utf8_fprintf( stderr, "[" GREEN "%.8i" GRAY "] %s %s %s%s: %s%s" GRAY
-                              "\n",
-                         p_item->i_object_id, p_item->psz_header,
-                         p_item->psz_module, psz_object,
-                         ppsz_type[i_type], ppsz_color[i_type],
-                         p_item->psz_msg );
-        }
-        else
-        {
-             utf8_fprintf( stderr, "[" GREEN "%.8i" GRAY "] %s %s%s: %s%s" GRAY "\n",
-                         p_item->i_object_id, p_item->psz_module, psz_object,
-                         ppsz_type[i_type], ppsz_color[i_type],
-                         p_item->psz_msg );
-        }
-    }
-    else
-    {
-        if( p_item->psz_header )
-        {
-            utf8_fprintf( stderr, "[%.8i] %s %s %s%s: %s\n", p_item->i_object_id,
-                         p_item->psz_header, p_item->psz_module,
-                         psz_object, ppsz_type[i_type], p_item->psz_msg );
-        }
-        else
-        {
-            utf8_fprintf( stderr, "[%.8i] %s %s%s: %s\n", p_item->i_object_id,
-                         p_item->psz_module, psz_object, ppsz_type[i_type],
-                         p_item->psz_msg );
-        }
-    }
+    utf8_fprintf( stderr, "[%s%p%s] %s%s%s %s%s: %s%s%s\n",
+                  priv->b_color ? GREEN : "",
+                  (void *)p_item->i_object_id,
+                  priv->b_color ? GRAY : "",
+                  p_item->psz_header ? p_item->psz_header : "",
+                  p_item->psz_header ? " " : "",
+                  p_item->psz_module, psz_object,
+                  ppsz_type[i_type],
+                  priv->b_color ? ppsz_color[i_type] : "",
+                  p_item->psz_msg,
+                  priv->b_color ? GRAY : "" );
 
 #   if defined(WIN32)
     fflush( stderr );




More information about the vlc-devel mailing list