[vlc-devel] commit: messages: Prefer the object name over the object type if type is VLC_GENERIC. ( Pierre d'Herbemont )

git version control git at videolan.org
Sun Jul 6 17:39:22 CEST 2008


vlc | branch: master | Pierre d'Herbemont <pdherbemont at videolan.org> | Sun Jul  6 16:57:51 2008 +0200| [0386618539878fde94110df15b77ba7c79e54e8c]

messages: Prefer the object name over the object type if type is VLC_GENERIC.

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

 include/vlc_messages.h              |    2 +-
 modules/gui/beos/MessagesWindow.cpp |    2 +-
 src/control/log.c                   |    2 +-
 src/misc/messages.c                 |   16 +++++++++++++---
 4 files changed, 16 insertions(+), 6 deletions(-)

diff --git a/include/vlc_messages.h b/include/vlc_messages.h
index 1ce7d7b..6035f81 100644
--- a/include/vlc_messages.h
+++ b/include/vlc_messages.h
@@ -44,7 +44,7 @@ typedef struct
 {
     int     i_type;                             /**< message type, see below */
     int     i_object_id;
-    const char *psz_object_type;
+    char *  psz_object;
     char *  psz_module;
     char *  psz_msg;                            /**< the message itself */
     char *  psz_header;                         /**< Additional header */
diff --git a/modules/gui/beos/MessagesWindow.cpp b/modules/gui/beos/MessagesWindow.cpp
index b4b2029..b83107e 100644
--- a/modules/gui/beos/MessagesWindow.cpp
+++ b/modules/gui/beos/MessagesWindow.cpp
@@ -80,7 +80,7 @@ void MessagesView::Pulse()
                 case VLC_MSG_DBG: color = gray; break;
             }
 
-            psz_module_type = p_sub->p_msg[i_start].psz_object_type;
+            psz_module_type = p_sub->p_msg[i_start].psz_object;
 
             if( LockLooper() )
             {
diff --git a/src/control/log.c b/src/control/log.c
index b8fb181..11b0fe6 100644
--- a/src/control/log.c
+++ b/src/control/log.c
@@ -178,7 +178,7 @@ libvlc_log_message_t *libvlc_log_iterator_next( libvlc_log_iterator_t *p_iter,
         vlc_mutex_lock(p_iter->p_messages->p_lock);
         msg = p_iter->p_messages->p_msg+i_pos;
         buffer->i_severity  = msg->i_type;
-        buffer->psz_type    = msg->psz_object_type;
+        buffer->psz_type    = msg->psz_object;
         buffer->psz_name    = msg->psz_module;
         buffer->psz_header  = msg->psz_header;
         buffer->psz_message = msg->psz_msg;
diff --git a/src/misc/messages.c b/src/misc/messages.c
index be832c6..78bf39e 100644
--- a/src/misc/messages.c
+++ b/src/misc/messages.c
@@ -78,6 +78,14 @@ static void QueueMsg ( vlc_object_t *, int, const char *,
 static void FlushMsg ( msg_queue_t * );
 static void PrintMsg ( vlc_object_t *, msg_item_t * );
 
+static inline char * object_description( vlc_object_t * p_this )
+{
+    if( p_this->i_object_type == VLC_OBJECT_GENERIC
+        && p_this->psz_object_name )
+        return strdup( p_this->psz_object_name );
+    return strdup( p_this->psz_object_type );
+}
+
 /**
  * Initialize messages queues
  * This function initializes all message queues
@@ -422,7 +430,7 @@ static void QueueMsg( vlc_object_t *p_this, int i_type, const char *psz_module,
 
             p_item->i_type =        VLC_MSG_WARN;
             p_item->i_object_id =   p_this->i_object_id;
-            p_item->psz_object_type = p_this->psz_object_type;
+            p_item->psz_object =    object_description( p_this );
             p_item->psz_module =    strdup( "message" );
             p_item->psz_msg =       strdup( "message queue overflowed" );
             p_item->psz_header =    NULL;
@@ -443,7 +451,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->psz_object_type = p_this->psz_object_type;
+    p_item->psz_object =    object_description( p_this );
     p_item->psz_module =    strdup( psz_module );
     p_item->psz_msg =       psz_str;
     p_item->psz_header =    psz_header;
@@ -455,6 +463,7 @@ static void QueueMsg( vlc_object_t *p_this, int i_type, const char *psz_module,
         free( p_item->psz_module );
         free( p_item->psz_msg );
         free( p_item->psz_header );
+        free( p_item->psz_object );
     }
 
     vlc_mutex_unlock ( &p_queue->lock );
@@ -500,6 +509,7 @@ static void FlushMsg ( msg_queue_t *p_queue )
         free( p_queue->msg[i_index].psz_msg );
         free( p_queue->msg[i_index].psz_module );
         free( p_queue->msg[i_index].psz_header );
+        free( p_queue->msg[i_index].psz_object );
     }
 
     /* Update the new start value */
@@ -545,7 +555,7 @@ static void PrintMsg ( vlc_object_t * p_this, msg_item_t * p_item )
             break;
     }
 
-    psz_object = p_item->psz_object_type;
+    psz_object = p_item->psz_object;
 
 #ifdef UNDER_CE
 #   define CE_WRITE(str) WriteFile( QUEUE.logfile, \




More information about the vlc-devel mailing list