From 789cb9a403839c395db652d226f411aa7fc14a61 Mon Sep 17 00:00:00 2001 From: Colin Patrick McCabe Date: Thu, 30 Dec 2010 15:15:39 -0800 Subject: [PATCH] osdmaptool: better error handling Signed-off-by: Colin McCabe --- src/osdmaptool.cc | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/src/osdmaptool.cc b/src/osdmaptool.cc index 6dcb3fe8356ba..770650e2db25f 100644 --- a/src/osdmaptool.cc +++ b/src/osdmaptool.cc @@ -24,6 +24,7 @@ using namespace std; #include "config.h" +#include "common/errno.h" #include "osd/OSDMap.h" #include "mon/MonMap.h" #include "common/common_init.h" @@ -111,7 +112,7 @@ int main(int argc, const char **argv) int r = 0; if (!(createsimple && clobber)) { r = bl.read_file(fn); - if (r >= 0) { + if (r == 0) { try { osdmap.decode(bl); } @@ -120,12 +121,12 @@ int main(int argc, const char **argv) return -1; } } + else { + cerr << me << ": couldn't open " << fn << ": " << cpp_strerror(r) + << std::endl; + return -1; + } } - char buf[80]; - if (!createsimple && r < 0) { - cerr << me << ": couldn't open " << fn << ": " << strerror_r(errno, buf, sizeof(buf)) << std::endl; - return -1; - } else if (createsimple && !clobber && r == 0) { cerr << me << ": " << fn << " exists, --clobber to overwrite" << std::endl; return -1; @@ -145,7 +146,7 @@ int main(int argc, const char **argv) if (import_crush) { bufferlist cbl; r = cbl.read_file(import_crush); - if (r < 0) { + if (r) { cerr << me << ": error reading crush map from " << import_crush << std::endl; exit(1); } @@ -254,8 +255,9 @@ int main(int argc, const char **argv) << " to " << fn << std::endl; int r = bl.write_file(fn); - if (r < 0) { - cerr << "osdmaptool: error writing to '" << fn << "': " << strerror_r(-r, buf, sizeof(buf)) << std::endl; + if (r) { + cerr << "osdmaptool: error writing to '" << fn << "': " + << cpp_strerror(r) << std::endl; return 1; } } -- 2.39.5