summaryrefslogtreecommitdiffabout
authorzautrix <zautrix>2005-03-18 21:38:19 (UTC)
committer zautrix <zautrix>2005-03-18 21:38:19 (UTC)
commitf0232b7801f098b5842e3cd5a1fd804af98ab862 (patch) (side-by-side diff)
tree7537ad5f4b86a4c7e0965051ce0082bcb8d023fa
parent246da4d3796f5e03a3ce5f2b2febe9e1c8dd7a7e (diff)
downloadkdepimpi-f0232b7801f098b5842e3cd5a1fd804af98ab862.zip
kdepimpi-f0232b7801f098b5842e3cd5a1fd804af98ab862.tar.gz
kdepimpi-f0232b7801f098b5842e3cd5a1fd804af98ab862.tar.bz2
etpan fixes
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--kmicromail/libmailwrapper/mhwrapper.cpp23
1 files changed, 15 insertions, 8 deletions
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
@@ -163,69 +163,76 @@ QString MHwrapper::buildPath(const QString&p)
{
QString f="";
if (p.length()==0||p=="/")
return MHPath;
if (!p.startsWith(MHPath)) {
f+=MHPath;
}
if (!p.startsWith("/")) {
f+="/";
}
f+=p;
return f;
}
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
f = buildPath(folder);
} else {
f = pfolder->getName();
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;
}
void MHwrapper::storeMessage(const char*msg,size_t length, const QString&Folder)
{
init_storage();
if (!m_storage) {
return;
}
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;
}
encodedString* MHwrapper::fetchRawBody(const RecMailP&mail)
{
encodedString*result = 0;
init_storage();
if (!m_storage) {
return result;
}
mailmessage * msg = 0;
char*data=0;
size_t size;
int r = mailsession_select_folder(m_storage->sto_session,(char*)mail->getMbox().latin1());
if (r!=MAIL_NO_ERROR) {