From 06a1e9c0ec8e81e362b5588e9ed1c1318638f027 Mon Sep 17 00:00:00 2001 From: Joao Eduardo Luis Date: Thu, 28 Mar 2013 02:07:18 +0000 Subject: [PATCH] ceph: propagate do_command()'s return value to user space 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 Reviewed-by: Dan Mick (cherry picked from commit e91405d540ce11b9996e4977212553bd33afb3ed) --- src/tools/ceph.cc | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/tools/ceph.cc b/src/tools/ceph.cc index d17c2426c94df..d1d50794c5ee1 100644 --- a/src/tools/ceph.cc +++ b/src/tools/ceph.cc @@ -337,8 +337,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); -- 2.39.5