]> sourceware.org Git - lvm2.git/commitdiff
Use dm_snprintf and improve error handling
authorZdenek Kabelac <zkabelac@redhat.com>
Wed, 8 Feb 2012 12:50:10 +0000 (12:50 +0000)
committerZdenek Kabelac <zkabelac@redhat.com>
Wed, 8 Feb 2012 12:50:10 +0000 (12:50 +0000)
Add standard error reporting with error logging.
Use plain alloc instead of zalloc for string buffer.
Use dm_snprintf with valid test for <0.

WHATS_NEW
lib/format_text/archiver.c

index 3bae8ac962a58048775ae67857dd1bcbb7e18907..8cb8871cdda663a38ba105c6847475b76c297b02 100644 (file)
--- a/WHATS_NEW
+++ b/WHATS_NEW
@@ -1,5 +1,6 @@
 Version 2.02.91 -
 ===================================
+  Fix error path handling in _build_desc()
   Add range test for device number in _scan_proc_dev().
   Use signed long for sysconf() call in cmirrord.
   Do not write in front of log buffer in print_log().
index d249b96e6294edd8beca03403e495f00b5886a80..0efdcb84090049d304882fef0b1d8d3cac8e160b 100644 (file)
@@ -83,13 +83,16 @@ static char *_build_desc(struct dm_pool *mem, const char *line, int before)
        size_t len = strlen(line) + 32;
        char *buffer;
 
-       if (!(buffer = dm_pool_zalloc(mem, strlen(line) + 32)))
-               return_NULL;
+       if (!(buffer = dm_pool_alloc(mem, len))) {
+               log_error("Failed to allocate desc.");
+               return NULL;
+       }
 
-       if (snprintf(buffer, len,
-                    "Created %s executing '%s'",
-                    before ? "*before*" : "*after*", line) < 0)
-               return_NULL;
+       if (dm_snprintf(buffer, len, "Created %s executing '%s'",
+                       before ? "*before*" : "*after*", line) < 0) {
+               log_error("Failed to build desc.");
+               return NULL;
+       }
 
        return buffer;
 }
This page took 0.046497 seconds and 5 git commands to generate.