From f0232b7801f098b5842e3cd5a1fd804af98ab862 Mon Sep 17 00:00:00 2001
From: zautrix <zautrix>
Date: Fri, 18 Mar 2005 21:38:19 +0000
Subject: etpan fixes

---
(limited to 'kmicromail/libmailwrapper')

diff --git a/kmicromail/libmailwrapper/mhwrapper.cpp b/kmicromail/libmailwrapper/mhwrapper.cpp
index 982d7a6..787e85d 100644
--- a/kmicromail/libmailwrapper/mhwrapper.cpp
+++ b/kmicromail/libmailwrapper/mhwrapper.cpp
@@ -176,10 +176,7 @@ QString MHwrapper::buildPath(const QString&p)
 
 int MHwrapper::createMbox(const QString&folder,const FolderP&pfolder,const QString&,bool )
 {
-    init_storage();
-    if (!m_storage) {
-        return 0;
-    }
+   
     QString f;
     if (!pfolder) {
         // toplevel folder
@@ -189,10 +186,19 @@ int MHwrapper::createMbox(const QString&folder,const FolderP&pfolder,const QStri
         f+="/";
         f+=folder;
     }
-   
+    QFileInfo fi ( f );
+    if ( fi. exists () ) {
+        qDebug("folder exists ");
+        return 1;
+    }
+    qDebug("creating folder ---%s--- ",f.latin1() ); 
+    init_storage();
+    if (!m_storage) {
+        return 0;
+    }
     int r = mailsession_create_folder(m_storage->sto_session,(char*)f.latin1());
     if (r != MAIL_NO_ERROR) {
-        qDebug("error creating folder ");
+        qDebug("error %d creating folder %s", r, f.latin1());
         return 0;
     }
     return 1;
@@ -207,12 +213,13 @@ void MHwrapper::storeMessage(const char*msg,size_t length, const QString&Folder)
     QString f = buildPath(Folder);
     int r = mailsession_select_folder(m_storage->sto_session,(char*)f.latin1());
     if (r!=MAIL_NO_ERROR) {
-        qDebug("error selecting folder! ");
+        qDebug("error selecting folder %d", r);
         return;
     }
     r = mailsession_append_message(m_storage->sto_session,(char*)msg,length);
     if (r!=MAIL_NO_ERROR) {
-        qDebug("error storing mail ");
+        if ( r != MAIL_ERROR_APPEND )
+            qDebug("error storing mail %d", r);
     }
     return;
 }
--
cgit v0.9.0.2