about summary refs log tree commit homepage
diff options
context:
space:
mode:
-rw-r--r--dev.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/dev.c b/dev.c
index cd14db9..5b3888b 100644
--- a/dev.c
+++ b/dev.c
@@ -169,8 +169,17 @@ int mog_dev_mkusage(const struct mog_dev *dev, struct mog_svc *svc)
         if (!svc->mgmt_mfd)
                 return 0;
 
-        usage_path = xasprintf("/dev%u/usage", (unsigned)dev->devid);
-        tmp_path = xasprintf("%s.%x", usage_path, (unsigned)getpid());
+        if (asprintf(&usage_path, "/dev%u/usage", (unsigned)dev->devid) < 0) {
+                syslog(LOG_ERR, "error generating path: /dev%u/usage (%m)",
+                        (unsigned)dev->devid);
+                return 0;
+        }
+        if (asprintf(&tmp_path, "%s.%x", usage_path, (unsigned)getpid()) < 0) {
+                syslog(LOG_ERR, "error generating path: /dev%u/usage.%u (%m)",
+                        (unsigned)dev->devid, (unsigned)getpid());
+                free(usage_path);
+                return 0;
+        }
 
         if (mog_unlink(svc, tmp_path) < 0 && errno != ENOENT) goto out;