Bug 92623 - exiting KDE while akregator is loading the feed list corrupts the feed list
Summary: exiting KDE while akregator is loading the feed list corrupts the feed list
Status: RESOLVED FIXED
Alias: None
Product: akregator
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Compiled Sources Linux
: HI major
Target Milestone: ---
Assignee: kdepim bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-11-03 09:59 UTC by Frank Osterfeld
Modified: 2004-11-03 10:24 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Frank Osterfeld 2004-11-03 09:59:56 UTC
Version:            (using KDE Devel)
Installed from:    Compiled sources
OS:                Linux

If you exit KDE when akregator is loading the feed list, the session management saves the partially loaded feed list ==> loss of feeds.
Comment 1 Frank Osterfeld 2004-11-03 10:24:16 UTC
CVS commit by osterfeld: 

Don't save feed list while loading
BUG: 92623


  M +3 -0      akregator_part.cpp   1.99
  M +1 -1      akregator_part.h   1.43
  M +1 -1      akregator_view.cpp   1.152


--- kdenonbeta/akregator/src/akregator_part.cpp  #1.98:1.99
@@ -430,4 +430,7 @@ bool aKregatorPart::closeURL()
 bool aKregatorPart::saveFeedList()
 {
+    // don't save when the part is opening the feed list! (would corrupt the list)
+    if (m_loading)
+        return false;
     // m_file is always local, so we use QFile
     QFile file(m_file);

--- kdenonbeta/akregator/src/akregator_part.h  #1.42:1.43
@@ -111,5 +111,5 @@ namespace Akregator
             virtual void openStandardFeedList();
 
-            bool loading (){return m_loading;}
+            bool isLoading (){return m_loading;}
             
             virtual void fetchFeedUrl(const QString&);

--- kdenonbeta/akregator/src/akregator_view.cpp  #1.151:1.152
@@ -1135,5 +1135,5 @@ void aKregatorView::slotDoIntervalFetche
 {
     kdDebug() << "enter slotDoIntervalFetches" << endl;
-    if (m_transaction->isRunning() || m_part->loading())
+    if (m_transaction->isRunning() || m_part->isLoading())
         return;
     kdDebug() << "doIntervalFetches" << endl;