[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