diff --git a/modules/gui/qt4/qt4.cpp b/modules/gui/qt4/qt4.cpp
index 8ba9df2c4568ef542e8643a0dd718f78ca60f9a2..64cc3487bd0a7dc86db5a573095e4535171a3919 100644
--- a/modules/gui/qt4/qt4.cpp
+++ b/modules/gui/qt4/qt4.cpp
@@ -525,7 +525,10 @@ static void *Thread( void *obj )
 #endif
 
     /* Last settings */
-    app.setQuitOnLastWindowClosed( true );
+    if( p_intf->p_sys->b_isDialogProvider )
+        app.setQuitOnLastWindowClosed( false );
+    else
+        app.setQuitOnLastWindowClosed( true );
 
     /* Retrieve last known path used in file browsing */
     p_intf->p_sys->filepath =