copy-blockdev: Modify to use strerror_r instead of %m 37/314837/1 accepted/tizen/unified/20240723.034810 accepted/tizen/unified/dev/20240724.110049 accepted/tizen/unified/x/20240723.090010
authorSangYoun Kwak <sy.kwak@samsung.com>
Mon, 22 Jul 2024 02:47:56 +0000 (11:47 +0900)
committerSangYoun Kwak <sy.kwak@samsung.com>
Mon, 22 Jul 2024 02:47:56 +0000 (11:47 +0900)
'%m' formatting is an glibc extension, it can be not-supported according
to the build environment. It is not supported in VD environment, so it
is replaced with strerror_r.

Change-Id: I3bb8b458b3b7f47e36d9e6c22d9b03e946aab30f
Signed-off-by: SangYoun Kwak <sy.kwak@samsung.com>
src/copy-blockdev/lib.c

index f5b646d4fe4c3cf8b37e8da480c09ddef26bb5b3..04b71154e0be23dba9f28efb6aa7fb5d4af01d0c 100644 (file)
@@ -252,6 +252,8 @@ int copy_and_update_progress(struct params_t *params) {
     long long range = params->progress_to - params->progress_from;
     size_t count = params->partsize;
     double percentage;
+    int ret = 0;
+    char err_str[256] = { 0 };
 
     __attribute__((cleanup(fd_cleanup))) int fd_src = open(params->src, O_RDONLY);
 
@@ -267,13 +269,17 @@ int copy_and_update_progress(struct params_t *params) {
         return ERR_DST_OPEN;
     }
 
-    errno = posix_fadvise(fd_src, 0, 0, POSIX_FADV_SEQUENTIAL);
-    if (errno != 0)
-        fprintf(stderr, "Cannot call posix_fadvise for src: %m\n");
+    ret = posix_fadvise(fd_src, 0, 0, POSIX_FADV_SEQUENTIAL);
+    if (ret != 0) {
+        strerror_r(ret, err_str, sizeof(err_str));
+        fprintf(stderr, "Cannot call posix_fadvise for src: %s(%d)\n", err_str, ret);
+    }
 
-    errno = posix_fadvise(fd_dst, 0, 0, POSIX_FADV_SEQUENTIAL);
-    if (errno != 0)
-        fprintf(stderr, "Cannot call posix_fadvise for dst: %m\n");
+    ret = posix_fadvise(fd_dst, 0, 0, POSIX_FADV_SEQUENTIAL);
+    if (ret != 0) {
+        strerror_r(ret, err_str, sizeof(err_str));
+        fprintf(stderr, "Cannot call posix_fadvise for dst: %s(%d)\n", err_str, ret);
+    }
 
     fprintf(stderr, "%s -> %s: %3d%% (%3d%% overall)", params->src, params->dst, 0, (int) params->progress_from);