opencv: fix build with protobuf-3.18 when dnn PACKAGECONFIG is enabled

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
Martin Jansa 2021-09-29 15:42:34 +02:00 committed by Khem Raj
parent d93099003a
commit cafcc65e74
2 changed files with 42 additions and 0 deletions

View File

@ -0,0 +1,41 @@
From 9cfa84313c5833d7295fcf57be93d5d2aaadfd88 Mon Sep 17 00:00:00 2001
From: Vincent Rabaud <vrabaud@google.com>
Date: Sat, 10 Jul 2021 00:21:52 +0200
Subject: [PATCH] Use the one argument version of SetTotalBytesLimit.
The two argument versions has been deprecated, cf
https://developers.google.com/protocol-buffers/docs/reference/cpp/google.protobuf.io.coded_stream
Upstream-Status: Backport [9cfa84313c5833d7295fcf57be93d5d2aaadfd88 - from master after 4.5.3 tag]
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---
modules/dnn/src/caffe/caffe_io.cpp | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/modules/dnn/src/caffe/caffe_io.cpp b/modules/dnn/src/caffe/caffe_io.cpp
index 2fc4d84f46..ebecf95eea 100644
--- a/modules/dnn/src/caffe/caffe_io.cpp
+++ b/modules/dnn/src/caffe/caffe_io.cpp
@@ -92,6 +92,7 @@
#ifdef HAVE_PROTOBUF
#include <google/protobuf/io/coded_stream.h>
#include <google/protobuf/io/zero_copy_stream_impl.h>
+#include <google/protobuf/stubs/common.h>
#include <google/protobuf/text_format.h>
#include <opencv2/core.hpp>
@@ -1111,7 +1112,11 @@ static const int kProtoReadBytesLimit = INT_MAX; // Max size of 2 GB minus 1 by
bool ReadProtoFromBinary(ZeroCopyInputStream* input, Message *proto) {
CodedInputStream coded_input(input);
+#if GOOGLE_PROTOBUF_VERSION >= 3006000
+ coded_input.SetTotalBytesLimit(kProtoReadBytesLimit);
+#else
coded_input.SetTotalBytesLimit(kProtoReadBytesLimit, 536870912);
+#endif
return proto->ParseFromCodedStream(&coded_input);
}
--
2.32.0

View File

@ -52,6 +52,7 @@ SRC_URI = "git://github.com/opencv/opencv.git;name=opencv \
file://download.patch \
file://0001-Make-ts-module-external.patch \
file://0001-sfm-link-with-Glog_LIBS.patch;patchdir=../contrib \
file://0001-Use-the-one-argument-version-of-SetTotalBytesLimit.patch \
"
SRC_URI:append:riscv64 = " file://0001-Use-Os-to-compile-tinyxml2.cpp.patch;patchdir=../contrib"