diff options
author | iphydf <iphydf@users.noreply.github.com> | 2016-09-30 11:39:37 +0100 |
---|---|---|
committer | iphydf <iphydf@users.noreply.github.com> | 2016-09-30 11:39:37 +0100 |
commit | 949ef785a4e7aa7868c9605b6bbed15c3f4beab9 (patch) | |
tree | 24e3ab7b32724f8d17a225463dfefc840b736b5c /toxcore/logger.c | |
parent | 48ddb115995f2bb55a736ae4cc54c70f3d34eeb4 (diff) |
Add the 'Tox' context object to the logger.
We don't currently support callbacks without context object.
Diffstat (limited to 'toxcore/logger.c')
-rw-r--r-- | toxcore/logger.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/toxcore/logger.c b/toxcore/logger.c index bbb31aa2..fae5d205 100644 --- a/toxcore/logger.c +++ b/toxcore/logger.c | |||
@@ -28,6 +28,7 @@ | |||
28 | 28 | ||
29 | struct Logger { | 29 | struct Logger { |
30 | logger_cb *callback; | 30 | logger_cb *callback; |
31 | void *context; | ||
31 | void *userdata; | 32 | void *userdata; |
32 | }; | 33 | }; |
33 | 34 | ||
@@ -35,7 +36,7 @@ struct Logger { | |||
35 | /** | 36 | /** |
36 | * Public Functions | 37 | * Public Functions |
37 | */ | 38 | */ |
38 | Logger *logger_new(void) | 39 | Logger *logger_new() |
39 | { | 40 | { |
40 | return (Logger *)calloc(1, sizeof(Logger)); | 41 | return (Logger *)calloc(1, sizeof(Logger)); |
41 | } | 42 | } |
@@ -45,9 +46,10 @@ void logger_kill(Logger *log) | |||
45 | free(log); | 46 | free(log); |
46 | } | 47 | } |
47 | 48 | ||
48 | void logger_callback_log(Logger *log, logger_cb *function, void *userdata) | 49 | void logger_callback_log(Logger *log, logger_cb *function, void *context, void *userdata) |
49 | { | 50 | { |
50 | log->callback = function; | 51 | log->callback = function; |
52 | log->context = context; | ||
51 | log->userdata = userdata; | 53 | log->userdata = userdata; |
52 | } | 54 | } |
53 | 55 | ||
@@ -65,5 +67,5 @@ void logger_write(Logger *log, LOGGER_LEVEL level, const char *file, int line, c | |||
65 | vsnprintf(msg, sizeof msg, format, args); | 67 | vsnprintf(msg, sizeof msg, format, args); |
66 | va_end(args); | 68 | va_end(args); |
67 | 69 | ||
68 | log->callback(level, file, line, func, msg, log->userdata); | 70 | log->callback(log->context, level, file, line, func, msg, log->userdata); |
69 | } | 71 | } |