diff options
author | Martin Szulecki | 2010-01-22 13:45:53 +0100 |
---|---|---|
committer | Martin Szulecki | 2010-01-22 13:45:53 +0100 |
commit | ab56c34e17f2f44fd51ff3e890c002215fbe7690 (patch) | |
tree | 75a8ba61bec72e351d466739ef5dfa751a1b46fd /src/debug.c | |
parent | 808d461fea2c1b028e8fbb232eb09a94555856e8 (diff) | |
download | libimobiledevice-ab56c34e17f2f44fd51ff3e890c002215fbe7690.tar.gz libimobiledevice-ab56c34e17f2f44fd51ff3e890c002215fbe7690.tar.bz2 |
Turn debug_plist into macro to show caller func/file/line and improve output
Diffstat (limited to 'src/debug.c')
-rw-r--r-- | src/debug.c | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/src/debug.c b/src/debug.c index 2cdeebf..b194b0d 100644 --- a/src/debug.c +++ b/src/debug.c @@ -3,6 +3,7 @@ * contains utilitary functions for debugging * * Copyright (c) 2008 Jonathan Beck All Rights Reserved. + * Copyright (c) 2010 Martin S. All Rights Reserved. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -56,10 +57,12 @@ static void debug_print_line(const char *func, const char *file, int line, const (void)asprintf(&header, "%s %s:%d %s()", str_time, file, line, func); free (str_time); - /* always in light green */ + /* trim ending newlines */ + + /* print header */ printf ("%s: ", header); - /* different colors according to the severity */ + /* print actual debug content */ printf ("%s\n", buffer); /* flush this output, as we need to debug */ @@ -135,7 +138,7 @@ inline void debug_buffer_to_file(const char *file, const char *data, const int l #endif } -inline void debug_plist(plist_t plist) +inline void debug_plist_real(const char *func, const char *file, int line, plist_t plist) { #ifndef STRIP_DEBUG_CODE if (!plist) @@ -144,7 +147,12 @@ inline void debug_plist(plist_t plist) char *buffer = NULL; uint32_t length = 0; plist_to_xml(plist, &buffer, &length); - debug_info("plist size: %i\nbuffer :\n%s", length, buffer); + + /* get rid of ending newline as one is already added in the debug line */ + if (buffer[length-1] == '\n') + buffer[length-1] = '\0'; + + debug_info_real(func, file, line, "printing %i bytes plist:\n%s", length, buffer); free(buffer); #endif } |