--- ./mythvideo/mythvideo/videodlg.cpp.orig	2010-02-24 00:01:20.000000000 +0100
+++ ./mythvideo/mythvideo/videodlg.cpp	2010-02-24 00:34:13.000000000 +0100
@@ -3630,6 +3630,11 @@
  */
 void VideoDialog::playFolder()
 {
+    const int WATCHED_WATERMARK = 10000; // Play less then this milisec and the chain of
+                                         // videos will not be followed when
+                                         // playing.
+    QTime playing_time;
+
     MythUIButtonListItem *item = GetItemCurrent();
     MythGenericTree *node = GetNodePtrFromButton(item);
     int list_count;
@@ -3641,19 +3646,24 @@
 
     if (list_count > 0)
     {
-        for (int i = 0; i < list_count; i++)
-        {
+        bool video_started;
+        int i = 0;
+        do {
+            video_started = false;
             MythGenericTree *subnode = node->getChildAt(i);
             if (subnode)
             {
                 Metadata *metadata = GetMetadataPtrFromNode(subnode);
                 if (metadata)
                 {
+                    playing_time.start();
+                    video_started = true;
                     PlayVideo(metadata->GetFilename(), 
                                        m_d->m_videoList->getListCache());
                 }
             }
-        }
+	i++;
+        } while (i < list_count && (!video_started || playing_time.elapsed() > WATCHED_WATERMARK));
     }
 }
 
