summaryrefslogtreecommitdiffstats
path: root/customdhcpcd/src/logwriter.c
diff options
context:
space:
mode:
authorSebastian Schmelzer2011-09-06 17:38:27 +0200
committerSebastian Schmelzer2011-09-06 17:38:27 +0200
commita80a0442fd397fc6aa4f3b2d8537c0cabb857e4b (patch)
tree35bb2426df79793b6b4aa44151ee6302b9916d22 /customdhcpcd/src/logwriter.c
parentlatest version of all files. cmake still doesn't work (diff)
downloadfbgui-a80a0442fd397fc6aa4f3b2d8537c0cabb857e4b.tar.gz
fbgui-a80a0442fd397fc6aa4f3b2d8537c0cabb857e4b.tar.xz
fbgui-a80a0442fd397fc6aa4f3b2d8537c0cabb857e4b.zip
fix compile errors
Diffstat (limited to 'customdhcpcd/src/logwriter.c')
-rw-r--r--customdhcpcd/src/logwriter.c21
1 files changed, 17 insertions, 4 deletions
diff --git a/customdhcpcd/src/logwriter.c b/customdhcpcd/src/logwriter.c
index 0a78995..d41bbfb 100644
--- a/customdhcpcd/src/logwriter.c
+++ b/customdhcpcd/src/logwriter.c
@@ -151,10 +151,23 @@ void logSendToQt(int type) {
}
}
-void logLoggerToQt(int level, const char *fmt, va_list args) {
- vsnprintf(mesg, sizeof(mesg), fmt, args);
- strcat(mesg, "\n");
- logToQt(level, DHCPCD_LOG, mesg);
+void logLoggerToQt(int level, const char *fmt, ...) {
+ // Format string into buffer
+ va_list argptr;
+ va_start (argptr, fmt);
+ int size = 255 + 2;
+ char *string = (char *) malloc (size);
+ int required = vsnprintf (string, size, fmt, argptr);
+ if (required >= size)
+ {
+ size = required + 2;
+ string = (char *) realloc (string, size);
+ vsnprintf (string, size, fmt, argptr);
+ }
+ va_end (argptr);
+
+ strcat(string, "\n");
+ logToQt(level, DHCPCD_LOG, string);
}
static void print_addresses (FILE *f, const struct address_head *addresses)