From 792b7e062958c76da1d9ddba94507a28ad9cd891 Mon Sep 17 00:00:00 2001 From: Maksim Shabunin Date: Wed, 15 Dec 2021 12:49:13 +0300 Subject: [PATCH] (3.4) Fixed several issues found by static analysis original commit: a079c2eb7cb74b4520c69b6f6c2ea79c7d410871 --- modules/dnn/src/onnx/onnx_importer.cpp | 4 +++- modules/objdetect/src/qrcode_encoder.cpp | 2 ++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/modules/dnn/src/onnx/onnx_importer.cpp b/modules/dnn/src/onnx/onnx_importer.cpp index 052b1b8..df404a9 100644 --- a/modules/dnn/src/onnx/onnx_importer.cpp +++ b/modules/dnn/src/onnx/onnx_importer.cpp @@ -1821,7 +1821,9 @@ void ONNXImporter::parseUnsqueeze(LayerParams& layerParams, const opencv_onnx::N } CV_Assert(axes.getIntValue(axes.size()-1) <= dims.size()); for (int j = 0; j < axes.size(); j++) { - dims.insert(dims.begin() + axes.getIntValue(j), 1); + const int idx = axes.getIntValue(j); + CV_Assert(idx <= dims.size()); + dims.insert(dims.begin() + idx, 1); } Mat out = input.reshape(0, dims); diff --git a/modules/objdetect/src/qrcode_encoder.cpp b/modules/objdetect/src/qrcode_encoder.cpp index ae15c64..2b363b6 100644 --- a/modules/objdetect/src/qrcode_encoder.cpp +++ b/modules/objdetect/src/qrcode_encoder.cpp @@ -881,6 +881,8 @@ void QRCodeEncoderImpl::findAutoMaskType() total_modules += 1; } } + if (total_modules == 0) + continue; // TODO: refactor, extract functions to reduce complexity int modules_percent = dark_modules * 100 / total_modules; int lower_bound = 45; int upper_bound = 55; -- 2.7.4