chiark / gitweb /
logs-show: fix OOM path
[elogind.git] / src / shared / logs-show.c
index edb5a9cafb74dacfab17f84b6d5d62e83ca7b7de..375ca543c1e8ed99a7d63cc1f0aa54b1194ace11 100644 (file)
@@ -50,11 +50,12 @@ static int parse_field(const void *data, size_t length, const char *field, char
 
         nl = length - fl;
         buf = malloc(nl+1);
-        memcpy(buf, (const char*) data + fl, nl);
-        ((char*)buf)[nl] = 0;
         if (!buf)
                 return log_oom();
 
+        memcpy(buf, (const char*) data + fl, nl);
+        ((char*)buf)[nl] = 0;
+
         free(*target);
         *target = buf;
         *target_size = nl;