[sysprof: 39/63] libsysprof-capture: Use vsnprintf() instead of g_strdup_printf()
- From: Christian Hergert <chergert src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [sysprof: 39/63] libsysprof-capture: Use vsnprintf() instead of g_strdup_printf()
- Date: Sat, 4 Jul 2020 18:32:37 +0000 (UTC)
commit 43530e361339fd894d06a8367b0285d12ef2cf08
Author: Philip Withnall <withnall endlessm com>
Date: Thu Jul 2 12:20:01 2020 +0100
libsysprof-capture: Use vsnprintf() instead of g_strdup_printf()
This imposes an arbitrary limit of 2048B on the length of printf-ed log
messages, but is otherwise equivalent.
Signed-off-by: Philip Withnall <withnall endlessm com>
Helps: #40
src/libsysprof-capture/sysprof-collector.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
---
diff --git a/src/libsysprof-capture/sysprof-collector.c b/src/libsysprof-capture/sysprof-collector.c
index c00765b..d36b7f4 100644
--- a/src/libsysprof-capture/sysprof-collector.c
+++ b/src/libsysprof-capture/sysprof-collector.c
@@ -65,7 +65,9 @@
#ifdef __linux__
# include <sched.h>
#endif
+#include <stdarg.h>
#include <stdbool.h>
+#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/syscall.h>
@@ -466,14 +468,14 @@ sysprof_collector_log_printf (int severity,
...)
{
COLLECTOR_BEGIN {
- g_autofree char *formatted = NULL;
+ char formatted[2048];
SysprofCaptureLog *ev;
va_list args;
size_t len;
size_t sl;
va_start (args, format);
- formatted = g_strdup_vprintf (format, args);
+ vsnprintf (formatted, sizeof (formatted), format, args);
va_end (args);
if (domain == NULL)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]