diff --git a/src/apps/qcam/main_window.cpp b/src/apps/qcam/main_window.cpp
index 224a7e5a693a..7e3f3da605c4 100644
--- a/src/apps/qcam/main_window.cpp
+++ b/src/apps/qcam/main_window.cpp
@@ -357,7 +357,7 @@ int MainWindow::startCapture()
 	/* Verify roles are supported. */
 	switch (roles.size()) {
 	case 0:
-		roles[0] = StreamRole::Viewfinder;
+		roles.push_back(StreamRole::Viewfinder);
 		break;
 	case 1:
 		if (roles[0] != StreamRole::Viewfinder) {
