summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>2019-10-11 17:14:40 +0300
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2019-10-11 17:31:02 +0300
commitf3c53dbf53b60defc61948cdfb64f79e6983e071 (patch)
tree1fde42d767e58871fd050da028393fc3d1ee6a44
parent8647991cd8310463d1f5d08698f277e2278e77d9 (diff)
libamera: pipeline: rkisp1: timeline: Fix compilation with gcc-[56]
With gcc 5 and 6, insertion in a std::multimap copies the pair passed as an argument to the insert() method. As the mapped type is a non-copyable std::unique_ptr<>, this fails to compile. Compilation with newer gcc versions succeed due to support for C++-17 and the fix described in https://cplusplus.github.io/LWG/issue2354. To support gcc 5 and 6, fix the issue by using std::multimap::emplace(). Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>
-rw-r--r--src/libcamera/pipeline/rkisp1/timeline.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/libcamera/pipeline/rkisp1/timeline.cpp b/src/libcamera/pipeline/rkisp1/timeline.cpp
index b98a1668..f6c6434d 100644
--- a/src/libcamera/pipeline/rkisp1/timeline.cpp
+++ b/src/libcamera/pipeline/rkisp1/timeline.cpp
@@ -123,7 +123,7 @@ void Timeline::scheduleAction(std::unique_ptr<FrameAction> action)
<< ", run now " << utils::time_point_to_string(now);
action->run();
} else {
- actions_.insert({ deadline, std::move(action) });
+ actions_.emplace(deadline, std::move(action));
updateDeadline();
}
}