diff --git a/src/libcamera/thread.cpp b/src/libcamera/thread.cpp
index 285b808332e8..bc1dcedea0d1 100644
--- a/src/libcamera/thread.cpp
+++ b/src/libcamera/thread.cpp
@@ -560,6 +560,8 @@ void Thread::removeMessages(Object *receiver)
  */
 void Thread::dispatchMessages(Message::Type type)
 {
+	ASSERT(data_ == ThreadData::current());
+
 	MutexLocker locker(data_->messages_.mutex_);
 
 	std::list<std::unique_ptr<Message>> &messages = data_->messages_.list_;
