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

List:       kmail-devel
Subject:    [Kmail] PATCH: Advanced Pop Account (again)
From:       Michael Haeckel <Michael () Haeckel ! Net>
Date:       2000-09-22 20:09:32
[Download RAW message or body]

On Fre, 22 Sep 2000 I wrote:
>
> This change should fix the mentioned problem in a secure way.
>
> A patch for the not working cancel button problem will probably soon
> follow.

Ok, here is the whole one.

- The cancel button now always does a complete kill.
- The already downloaded messages are deleted on the next mail check
- The statusbar displays the right number of downloaded messages after
  cancelling

Please review it.

BTW: Is there anything else, that absolutely needs to be done before the 
release, besides the charset issue?

Regards,
Michael Häckel


["mail-check-abort.diff" (text/plain)]

--- kmail/kmacctexppop.cpp	Tue Sep 19 10:54:12 2000
+++ kmail.new/kmacctexppop.cpp	Fri Sep 22 21:43:11 2000
@@ -472,8 +472,8 @@
 //-----------------------------------------------------------------------------
 void KMAcctExpPop::slotAbortRequested()
 {
-  if (stage != List) return;
-  stage = Idle;
+  if (stage == Idle) return;
+  stage = Quit;
   job->kill();
   job = 0L;
   slotCancel();
@@ -592,7 +592,7 @@
     stage = Idle;
     KMBroadcastStatus::instance()->setStatusProgressPercent( 100 );
     if( idsOfMsgs.count() > 0 ) {
-      KMBroadcastStatus::instance()->setStatusMsg(i18n("Transmission completed (%1 \
messages) (%2 KB)...").arg(idsOfMsgs.count()).arg(numBytesRead/1024)); +      \
KMBroadcastStatus::instance()->setStatusMsg(i18n("Transmission completed (%1 \
messages) (%2 KB)...").arg(indexOfCurrentMsg).arg(numBytesRead/1024));  } else {
       KMBroadcastStatus::instance()->setStatusMsg(i18n("Transmission completed..." \
));  }
@@ -633,11 +633,6 @@
     delete curMsgStrm;
   curMsgStrm = 0;
 
-  if (KMBroadcastStatus::instance()->abortRequested()) {
-    slotCancel();
-    return;
-  }
-
   if (next == idsOfMsgsPendingDownload.end()) {
     processRemainingQueuedMessagesAndSaveUidList();
 
@@ -738,6 +733,9 @@
 	  }
 	  else
 	    kdDebug() << "KMAcctExpPop::slotData synchronization failure." << endl;
+	  url.setPath(QString("/%1").arg(id));
+	  if (uidsOfSeenMsgs.contains( uid ))
+	    idsOfMsgsToDelete.append(url.url());
 	}
 	uidsOfNextSeenMsgs.append( uid );
       }


_______________________________________________
Kmail Developers mailing list
Kmail@master.kde.org
http://master.kde.org/mailman/listinfo/kmail


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

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