]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
crushtool: Don't crash when called on a file that isn't a crushmap
authorBrad Hubbard <bhubbard@redhat.com>
Thu, 10 Mar 2016 05:41:39 +0000 (15:41 +1000)
committerBrad Hubbard <bhubbard@redhat.com>
Fri, 11 Mar 2016 01:40:45 +0000 (11:40 +1000)
Fixes: #8286
Signed-off-by: Brad Hubbard <bhubbard@redhat.com>
src/tools/crushtool.cc

index 5d2d542066a69b2be9c2a601d110c6bb89536c22..7e0438972c59782a5935608aafa50ccc3193bbff 100644 (file)
@@ -583,7 +583,12 @@ int main(int argc, const char **argv)
       }
     }
     bufferlist::iterator p = bl.begin();
-    crush.decode(p);
+    try {
+      crush.decode(p);
+    } catch(...) {
+      cerr << me << ": unable to decode " << infn << std::endl;
+      exit(EXIT_FAILURE);
+    }
   }
 
   if (compile) {