diff --git a/src/libcamera/device_enumerator.cpp b/src/libcamera/device_enumerator.cpp
index f1d016db64a0..0d18e75525af 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.
