diff --git a/src/processor/processor_compass.cpp b/src/processor/processor_compass.cpp
index 7abc25ff089774bc670a163dd41993566f0b3f2f..972c26c572e51296a556f8c48c6daee941770bd8 100644
--- a/src/processor/processor_compass.cpp
+++ b/src/processor/processor_compass.cpp
@@ -28,7 +28,8 @@ void ProcessorCompass::processCapture(CaptureBasePtr _capture)
     }
     // Otherwise: store capture
     // Note that more than one processor can be emplacing frames, so an older frame can arrive later than this one.
-    buffer_capture_.add(_capture->getTimeStamp(), _capture);
+    else
+        buffer_capture_.add(_capture->getTimeStamp(), _capture);
 }
 
 void ProcessorCompass::processKeyFrame(FrameBasePtr _frame, const double& _time_tolerance)