Sophie

Sophie

distrib > Mandriva > 2009.0 > i586 > by-pkgid > aeb9b9a178b7cd0ecbd6bfcb358b9d5c > files > 9

mkinitrd-6.0.63-3mnb2.src.rpm

diff -urN mkinitrd-6.0.34.orig/nash/dm.c mkinitrd-6.0.34/nash/dm.c
--- mkinitrd-6.0.34.orig/nash/dm.c	2008-03-07 01:20:34.000000000 +0100
+++ mkinitrd-6.0.34/nash/dm.c	2008-03-17 18:20:28.030341407 +0100
@@ -48,7 +48,7 @@
         return -1;
     if (name)
         dm_task_set_name(*task, name);
-    ret = dm_task_run(*task);
+    ret = dm_task_run(*task) ? 1 : -1;
     if (ret < 0) {
         dm_task_destroy(*task);
         *task = NULL;
@@ -144,7 +144,10 @@
         return 0;
 
     dm_task_set_name(task, name);
-    dm_task_run(task);
+    if (!dm_task_run(task)) {
+        dm_task_destroy(task);
+        return 0;
+    }
 
     dm_task_get_info(task, &info);
     if (!info.exists) {
@@ -216,10 +219,7 @@
 
     dm_task_update_nodes();
 
-    if (rc < 0)
-        return 0;
-
-    return 1;
+    return rc;
 }
 
 #if 0
@@ -267,10 +267,7 @@
 
     dm_task_update_nodes();
 
-    if (rc < 0)
-        return 0;
-
-    return 1;
+    return rc;
 }
 
 #if 0
@@ -504,8 +501,7 @@
         free(iter);
         return NULL;
     }
-    dm_task_run(task);
-    if (!(dmnames = dm_task_get_names(task))) {
+    if (!dm_task_run(task) || !(dmnames = dm_task_get_names(task))) {
         dm_task_destroy(task);
         goto out;
     }