Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
videolan
vlc
Commits
c8d5ba62
Commit
c8d5ba62
authored
Feb 08, 2015
by
Rémi Denis-Courmont
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
logger: track file, line and function for debug
parent
b6e8d39f
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
35 additions
and
15 deletions
+35
-15
include/vlc_messages.h
include/vlc_messages.h
+23
-14
src/misc/messages.c
src/misc/messages.c
+12
-1
No files found.
include/vlc_messages.h
View file @
c8d5ba62
...
@@ -60,23 +60,32 @@ typedef struct vlc_log_t
...
@@ -60,23 +60,32 @@ typedef struct vlc_log_t
const
char
*
psz_object_type
;
/**< Emitter object type name */
const
char
*
psz_object_type
;
/**< Emitter object type name */
const
char
*
psz_module
;
/**< Emitter module (source code) */
const
char
*
psz_module
;
/**< Emitter module (source code) */
const
char
*
psz_header
;
/**< Additional header (used by VLM media) */
const
char
*
psz_header
;
/**< Additional header (used by VLM media) */
const
char
*
file
;
/**< Source code file name or NULL */
int
line
;
/**< Source code file line number or -1 */
const
char
*
func
;
/**< Source code calling function name or NULL */
}
vlc_log_t
;
}
vlc_log_t
;
VLC_API
void
vlc_Log
(
vlc_object_t
*
,
int
,
VLC_API
void
vlc_Log
(
vlc_object_t
*
obj
,
int
prio
,
const
char
*
module
,
const
char
*
,
const
char
*
,
...)
VLC_FORMAT
(
4
,
5
);
const
char
*
file
,
unsigned
line
,
const
char
*
func
,
VLC_API
void
vlc_vaLog
(
vlc_object_t
*
,
int
,
const
char
*
format
,
...)
VLC_FORMAT
(
7
,
8
);
const
char
*
,
const
char
*
,
va_list
);
VLC_API
void
vlc_vaLog
(
vlc_object_t
*
obj
,
int
prio
,
const
char
*
module
,
#define msg_GenericVa(a, b, c, d) \
const
char
*
file
,
unsigned
line
,
const
char
*
func
,
vlc_vaLog(VLC_OBJECT(a), b, MODULE_STRING, c, d)
const
char
*
format
,
va_list
ap
);
#define msg_GenericVa(o, p, fmt, ap) \
vlc_vaLog(VLC_OBJECT(o), p, MODULE_STRING, __FILE__, __LINE__, __func__, \
fmt, ap)
#define msg_Info( p_this, ... ) \
#define msg_Generic(o, p, ...) \
vlc_Log( VLC_OBJECT(p_this), VLC_MSG_INFO, MODULE_STRING, __VA_ARGS__ )
vlc_Log(VLC_OBJECT(o), p, MODULE_STRING, __FILE__, __LINE__, \
#define msg_Err( p_this, ... ) \
__func__, __VA_ARGS__)
vlc_Log( VLC_OBJECT(p_this), VLC_MSG_ERR, MODULE_STRING, __VA_ARGS__ )
#define msg_Info(p_this, ...) \
#define msg_Warn( p_this, ... ) \
msg_Generic(p_this, VLC_MSG_INFO, __VA_ARGS__)
vlc_Log( VLC_OBJECT(p_this), VLC_MSG_WARN, MODULE_STRING, __VA_ARGS__ )
#define msg_Err(p_this, ...) \
#define msg_Dbg( p_this, ... ) \
msg_Generic(p_this, VLC_MSG_ERR, __VA_ARGS__)
vlc_Log( VLC_OBJECT(p_this), VLC_MSG_DBG, MODULE_STRING, __VA_ARGS__ )
#define msg_Warn(p_this, ...) \
msg_Generic(p_this, VLC_MSG_WARN, __VA_ARGS__)
#define msg_Dbg(p_this, ...) \
msg_Generic(p_this, VLC_MSG_DBG, __VA_ARGS__)
#ifndef MODULE_STRING
#ifndef MODULE_STRING
# define MODULE_STRING __FILE__
# define MODULE_STRING __FILE__
...
...
src/misc/messages.c
View file @
c8d5ba62
...
@@ -88,6 +88,7 @@ static void Win32DebugOutputMsg (void *, int , const vlc_log_t *,
...
@@ -88,6 +88,7 @@ static void Win32DebugOutputMsg (void *, int , const vlc_log_t *,
* to vlc_Log().
* to vlc_Log().
*/
*/
void
vlc_vaLog
(
vlc_object_t
*
obj
,
int
type
,
const
char
*
module
,
void
vlc_vaLog
(
vlc_object_t
*
obj
,
int
type
,
const
char
*
module
,
const
char
*
file
,
unsigned
line
,
const
char
*
func
,
const
char
*
format
,
va_list
args
)
const
char
*
format
,
va_list
args
)
{
{
if
(
obj
!=
NULL
&&
obj
->
i_flags
&
OBJECT_FLAGS_QUIET
)
if
(
obj
!=
NULL
&&
obj
->
i_flags
&
OBJECT_FLAGS_QUIET
)
...
@@ -115,6 +116,9 @@ void vlc_vaLog (vlc_object_t *obj, int type, const char *module,
...
@@ -115,6 +116,9 @@ void vlc_vaLog (vlc_object_t *obj, int type, const char *module,
msg
.
psz_object_type
=
(
obj
!=
NULL
)
?
obj
->
psz_object_type
:
"generic"
;
msg
.
psz_object_type
=
(
obj
!=
NULL
)
?
obj
->
psz_object_type
:
"generic"
;
msg
.
psz_module
=
module
;
msg
.
psz_module
=
module
;
msg
.
psz_header
=
NULL
;
msg
.
psz_header
=
NULL
;
msg
.
file
=
file
;
msg
.
line
=
line
;
msg
.
func
=
func
;
for
(
vlc_object_t
*
o
=
obj
;
o
!=
NULL
;
o
=
o
->
p_parent
)
for
(
vlc_object_t
*
o
=
obj
;
o
!=
NULL
;
o
=
o
->
p_parent
)
if
(
o
->
psz_header
!=
NULL
)
if
(
o
->
psz_header
!=
NULL
)
...
@@ -142,15 +146,19 @@ void vlc_vaLog (vlc_object_t *obj, int type, const char *module,
...
@@ -142,15 +146,19 @@ void vlc_vaLog (vlc_object_t *obj, int type, const char *module,
* \param type VLC_MSG_* message type (info, error, warning or debug)
* \param type VLC_MSG_* message type (info, error, warning or debug)
* \param module name of module from which the message come
* \param module name of module from which the message come
* (normally MODULE_STRING)
* (normally MODULE_STRING)
* \param file source module file name (normally __FILE__) or NULL
* \param line function call source line number (normally __LINE__) or 0
* \param func calling function name (normally __func__) or NULL
* \param format printf-like message format
* \param format printf-like message format
*/
*/
void
vlc_Log
(
vlc_object_t
*
obj
,
int
type
,
const
char
*
module
,
void
vlc_Log
(
vlc_object_t
*
obj
,
int
type
,
const
char
*
module
,
const
char
*
file
,
unsigned
line
,
const
char
*
func
,
const
char
*
format
,
...
)
const
char
*
format
,
...
)
{
{
va_list
ap
;
va_list
ap
;
va_start
(
ap
,
format
);
va_start
(
ap
,
format
);
vlc_vaLog
(
obj
,
type
,
module
,
format
,
ap
);
vlc_vaLog
(
obj
,
type
,
module
,
f
ile
,
line
,
func
,
f
ormat
,
ap
);
va_end
(
ap
);
va_end
(
ap
);
}
}
...
@@ -265,6 +273,9 @@ static void vlc_vaLogEarly(void *d, int type, const vlc_log_t *item,
...
@@ -265,6 +273,9 @@ static void vlc_vaLogEarly(void *d, int type, const vlc_log_t *item,
log
->
meta
.
psz_object_type
=
item
->
psz_object_type
;
log
->
meta
.
psz_object_type
=
item
->
psz_object_type
;
log
->
meta
.
psz_module
=
item
->
psz_module
;
/* Ditto. */
log
->
meta
.
psz_module
=
item
->
psz_module
;
/* Ditto. */
log
->
meta
.
psz_header
=
item
->
psz_header
?
strdup
(
item
->
psz_header
)
:
NULL
;
log
->
meta
.
psz_header
=
item
->
psz_header
?
strdup
(
item
->
psz_header
)
:
NULL
;
log
->
meta
.
file
=
item
->
file
;
log
->
meta
.
line
=
item
->
line
;
log
->
meta
.
func
=
item
->
func
;
int
canc
=
vlc_savecancel
();
/* XXX: needed for vasprintf() ? */
int
canc
=
vlc_savecancel
();
/* XXX: needed for vasprintf() ? */
if
(
vasprintf
(
&
log
->
msg
,
format
,
ap
)
==
-
1
)
if
(
vasprintf
(
&
log
->
msg
,
format
,
ap
)
==
-
1
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment