From 08e0c69dbf6ace1069998f0503d1449f17010073 Mon Sep 17 00:00:00 2001 From: Tomoaki Teshima Date: Thu, 22 Mar 2018 18:28:47 +0900 Subject: [PATCH] apply the workaround to correct range --- modules/calib3d/src/ap3p.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/modules/calib3d/src/ap3p.cpp b/modules/calib3d/src/ap3p.cpp index c22a2dbbd8..5a7fc60d83 100644 --- a/modules/calib3d/src/ap3p.cpp +++ b/modules/calib3d/src/ap3p.cpp @@ -45,7 +45,8 @@ void solveQuartic(const double *factors, double *realRoots) { complex sqrt_2m = sqrt(static_cast >(-2 * p4 / 3 + t)); double B_4A = -a3 / (4 * a4); double complex1 = 4 * p4 / 3 + t; -#if defined(__clang__) && defined(__arm__) && __clang_major__ == 3 && __clang_minor__ <= 7 && !defined(__ANDROID__) +#if defined(__clang__) && defined(__arm__) && (__clang_major__ == 3 || __clang_minor__ == 4) && !defined(__ANDROID__) + // details: https://github.com/opencv/opencv/issues/11135 // details: https://github.com/opencv/opencv/issues/11056 complex complex2 = 2 * q4; complex2 = complex(complex2.real() / sqrt_2m.real(), 0);