]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
ceph: propagate do_command()'s return value to user space
authorJoao Eduardo Luis <joao.luis@inktank.com>
Thu, 28 Mar 2013 02:07:18 +0000 (02:07 +0000)
committerSage Weil <sage@inktank.com>
Thu, 28 Mar 2013 21:55:23 +0000 (14:55 -0700)
We were returning '1' regardless of what do_command() returned in case
of error.  This would make building tools relying on command error codes
short of useless, and forced them to rely instead on error messages.

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
Reviewed-by: Dan Mick <dan.mick@inktank.com>
src/tools/ceph.cc

index cb51a8dad5aada74423b10c188d3b557ba1add9d..f5c95320b912d2e251205fdbb3643274b0d1f03b 100644 (file)
@@ -342,8 +342,9 @@ int main(int argc, const char **argv)
          }
 
          bufferlist obl;
-         if (do_command(ctx, cmd, indata, obl) < 0) {
-           ret = 1;
+         ret = do_command(ctx, cmd, indata, obl);
+         if (ret < 0) {
+           ret = -ret;
            break;
          }
          outbl.claim(obl);