From 3537c2ca7ebf31c1673b9ec2bb0c17b0406bbae0 Mon Sep 17 00:00:00 2001 From: surmeh01 Date: Fri, 18 May 2018 16:31:43 +0100 Subject: Release 18.05 --- tests/CaffeResNet-Armnn/CaffeResNet-Armnn.cpp | 36 +++++++++++++++++++-------- 1 file changed, 26 insertions(+), 10 deletions(-) (limited to 'tests/CaffeResNet-Armnn/CaffeResNet-Armnn.cpp') diff --git a/tests/CaffeResNet-Armnn/CaffeResNet-Armnn.cpp b/tests/CaffeResNet-Armnn/CaffeResNet-Armnn.cpp index ed304f8b0c..7cccb215a1 100644 --- a/tests/CaffeResNet-Armnn/CaffeResNet-Armnn.cpp +++ b/tests/CaffeResNet-Armnn/CaffeResNet-Armnn.cpp @@ -8,16 +8,32 @@ int main(int argc, char* argv[]) { - std::vector imageSet = + int retVal = EXIT_FAILURE; + try { - {"ILSVRC2012_val_00000018.JPEG", 21 }, - {"shark.jpg", 2} - }; + // Coverity fix: The following code may throw an exception of type std::length_error. + std::vector imageSet = + { + {"ILSVRC2012_val_00000018.JPEG", 21 }, + {"shark.jpg", 2} + }; - armnn::TensorShape inputTensorShape({ 1, 3, 224, 224 }); - return armnn::test::ClassifierInferenceTestMain( - argc, argv, "ResNet_50_ilsvrc15_model.caffemodel", true, - "data", "prob", { 0, 1 }, - [&imageSet](const char* dataDir) { return ImageNetDatabase(dataDir, 224, 224, imageSet); }, - &inputTensorShape); + armnn::TensorShape inputTensorShape({ 1, 3, 224, 224 }); + + // Coverity fix: ClassifierInferenceTestMain() may throw uncaught exceptions. + retVal = armnn::test::ClassifierInferenceTestMain( + argc, argv, "ResNet_50_ilsvrc15_model.caffemodel", true, + "data", "prob", { 0, 1 }, + [&imageSet](const char* dataDir) { return ImageNetDatabase(dataDir, 224, 224, imageSet); }, + &inputTensorShape); + } + catch (const std::exception& e) + { + // Coverity fix: BOOST_LOG_TRIVIAL (typically used to report errors) may throw an + // exception of type std::length_error. + // Using stderr instead in this context as there is no point in nesting try-catch blocks here. + std::cerr << "WARNING: CaffeResNet-Armnn: An error has occurred when running " + "the classifier inference tests: " << e.what() << std::endl; + } + return retVal; } -- cgit v1.2.1