[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    playground/utils/filelight/src/part
From:       Martin Tobias Holmedahl Sandsmark <sandsmark () samfundet ! no>
Date:       2010-05-26 16:48:53
Message-ID: 20100526164853.88FE0AC8CB () svn ! kde ! org
[Download RAW message or body]

SVN commit 1130865 by sandsmark:

abort running scan if user tries to view something else

 M  +5 -0      part.cpp  
 M  +3 -6      scan.cpp  


--- trunk/playground/utils/filelight/src/part/part.cpp #1130864:1130865
@@ -204,6 +204,8 @@
     emit m_ext->openUrlNotify(); //must be done first
     emit m_ext->setLocationBarUrl(u.prettyUrl());
 
+    if (m_manager->running())
+        m_manager->abort();
 
     if (u == url())
         m_manager->emptyCache(); //same as rescan()
@@ -232,6 +234,9 @@
         m_started = true;
     }
 
+    if (m_manager->running())
+        m_manager->abort();
+
     m_numberOfFiles->setText(QString());
 
     if (m_manager->start(url)) {
--- trunk/playground/utils/filelight/src/part/scan.cpp #1130864:1130865
@@ -59,7 +59,6 @@
 
 bool ScanManager::running() const
 {
-    //FIXME not complete
     return m_thread && m_thread->isRunning();
 }
 
@@ -72,10 +71,8 @@
     kDebug() << "Scan requested for: " << url.prettyUrl() << endl;
 
     if (running()) {
-        //shouldn't happen, but lets prevent mega-disasters just in case eh?
-        kWarning() << "Attempted to run 2 scans concurrently!\n";
-        //TODO give user an error
-        return false;
+        kWarning() << "Tried to launch two concurrent scans, aborting old one...";
+        abort();
     }
 
     m_files = 0;
@@ -181,7 +178,7 @@
 
     delete findChild<RemoteLister *>("remote_lister");
 
-    return m_thread && m_thread->isRunning();
+    return m_thread && m_thread->wait();
 }
 
 void
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic