]> git.sesse.net Git - vlc/commitdiff
messages: Prefer the object name over the object type if type is VLC_GENERIC.
authorPierre d'Herbemont <pdherbemont@videolan.org>
Sun, 6 Jul 2008 14:57:51 +0000 (16:57 +0200)
committerPierre d'Herbemont <pdherbemont@videolan.org>
Sun, 6 Jul 2008 15:41:14 +0000 (17:41 +0200)
include/vlc_messages.h
modules/gui/beos/MessagesWindow.cpp
src/control/log.c
src/misc/messages.c

index 1ce7d7b914ac6cac8c52844c11c2923897ff02da..6035f81d483da511b508d6b0fbf86996d2459e16 100644 (file)
@@ -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 */
index b4b202933004508353f3f7c23b2c3c7999ae58ec..b83107eff093f0469cbc3b2da2f627c40e999019 100644 (file)
@@ -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() )
             {
index b8fb181136fde997648903720c1d12e545812b79..11b0fe617bc0be1224e7f779db0e65d336cc6b79 100644 (file)
@@ -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;
index be832c65c87fba5ec3ea54be0cd2c8e3768f2059..78bf39e0b8d4e361364af9be295a626b36de8a05 100644 (file)
@@ -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, \