From 824ed85553cf65ba879b03e326c8647619d7ede1 Mon Sep 17 00:00:00 2001 From: Laurent Pinchart Date: Tue, 8 Jan 2019 16:44:32 +0200 Subject: libcamera: device_enumerator: Fix memory leak in error path MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The DeviceEnumerator::create() function allocates a DeviceEnumeratorUdev and fails to delete it in the error path, causing a memory leak. Fix it. Signed-off-by: Laurent Pinchart Reviewed-by: Niklas Söderlund --- src/libcamera/device_enumerator.cpp | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/libcamera/device_enumerator.cpp') diff --git a/src/libcamera/device_enumerator.cpp b/src/libcamera/device_enumerator.cpp index f1d016db..0d18e755 100644 --- a/src/libcamera/device_enumerator.cpp +++ b/src/libcamera/device_enumerator.cpp @@ -140,6 +140,8 @@ DeviceEnumerator *DeviceEnumerator::create() if (!enumerator->init()) return enumerator; + delete enumerator; + /* * Either udev is not available or udev initialization failed. Fall back * on the sysfs enumerator. -- cgit v1.2.1