summaryrefslogtreecommitdiffabout
Side-by-side diff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--kmicromail/libetpan/mime/mailmime_decode.c3
-rw-r--r--kmicromail/libmailwrapper/generatemail.cpp13
-rw-r--r--kmicromail/libmailwrapper/imapwrapper.cpp7
-rw-r--r--kmicromail/libmailwrapper/settings.cpp1
-rw-r--r--kmicromail/opiemail.cpp9
-rw-r--r--libkdepim/kprefswidget.cpp1
6 files changed, 23 insertions, 11 deletions
diff --git a/kmicromail/libetpan/mime/mailmime_decode.c b/kmicromail/libetpan/mime/mailmime_decode.c
index e48ec19..dbaeb68 100644
--- a/kmicromail/libetpan/mime/mailmime_decode.c
+++ b/kmicromail/libetpan/mime/mailmime_decode.c
@@ -205,9 +205,10 @@ int mailmime_encoded_phrase_parse(const char * default_fromcode,
free(raw_word);
res = MAILIMF_ERROR_MEMORY;
goto free;
}
-
+ // LUTZ fix
+ free(wordutf8);
free(raw_word);
first = FALSE;
}
else if (r == MAILIMF_ERROR_PARSE) {
diff --git a/kmicromail/libmailwrapper/generatemail.cpp b/kmicromail/libmailwrapper/generatemail.cpp
index 49315ba..32311d7 100644
--- a/kmicromail/libmailwrapper/generatemail.cpp
+++ b/kmicromail/libmailwrapper/generatemail.cpp
@@ -8,9 +8,9 @@
#include <stdlib.h>
#include <qfileinfo.h>
using namespace Opie::Core;
-const char* Generatemail::USER_AGENT="OpieMail v0.6";
+const char* Generatemail::USER_AGENT="KOpieMail 33 1/3";
Generatemail::Generatemail()
{
}
@@ -131,9 +131,8 @@ mailmime *Generatemail::buildFilePart(const QString&filename,const QString&mimet
mailmime_parameter * param = 0;
char*name = 0;
char*file = 0;
int err;
-
int pos = filename.findRev( '/' );
if (filename.length()>0) {
QString tmp = filename.right( filename.length() - ( pos + 1 ) );
@@ -170,9 +169,9 @@ mailmime *Generatemail::buildFilePart(const QString&filename,const QString&mimet
if (filePart) {
if (filename.length()>0) {
err = mailmime_set_body_file( filePart, file );
} else {
- err = mailmime_set_body_text(filePart,strdup(TextContent.data()),TextContent.length());
+ err = mailmime_set_body_text(filePart,strdup( TextContent.utf8()),TextContent.utf8().length());
}
if (err != MAILIMF_NO_ERROR) {
qDebug("Error setting body with file ");
mailmime_free( filePart );
@@ -226,9 +225,9 @@ mailmime *Generatemail::buildTxtPart(const QString&str ) {
mailmime_fields *fields;
mailmime_content *content;
mailmime_parameter *param;
int err;
-
+ QCString __str;
param = mailmime_parameter_new( strdup( "charset" ),
strdup( "iso-8859-1" ) );
if ( param == NULL )
goto err_free;
@@ -247,10 +246,12 @@ mailmime *Generatemail::buildTxtPart(const QString&str ) {
txtPart = mailmime_new_empty( content, fields );
if ( txtPart == NULL )
goto err_free_fields;
-
- err = mailmime_set_body_text( txtPart, (char*)str.data(), str.length() );
+ {
+ __str = str.utf8();
+ err = mailmime_set_body_text( txtPart, __str.data(), __str.length() );
+ }
if ( err != MAILIMF_NO_ERROR )
goto err_free_txtPart;
return txtPart; // Success :)
diff --git a/kmicromail/libmailwrapper/imapwrapper.cpp b/kmicromail/libmailwrapper/imapwrapper.cpp
index ae667ec..d90a8d2 100644
--- a/kmicromail/libmailwrapper/imapwrapper.cpp
+++ b/kmicromail/libmailwrapper/imapwrapper.cpp
@@ -74,9 +74,9 @@ void IMAPwrapper::progress( QString m )
}
bool IMAPwrapper::start_tls(bool force_tls)
{
int err;
- bool try_tls;
+ bool try_tls = force_tls;
mailimap_capability_data * cap_data = 0;
err = mailimap_capability(m_imap,&cap_data);
if (err != MAILIMAP_NO_ERROR) {
@@ -477,10 +477,10 @@ RecMail*IMAPwrapper::parse_list_result(mailimap_msg_att* m_att)
if ( head == NULL )
continue;
if ( head->env_date != NULL ) {
m->setDate(head->env_date);
- struct mailimf_date_time result;
- struct mailimf_date_time* date = &result;
+ //struct mailimf_date_time result;
+ struct mailimf_date_time* date;// = &result;
struct mailimf_date_time **re = &date;
size_t length = m->getDate().length();
size_t index = 0;
if ( mailimf_date_time_parse(head->env_date, length,&index, re ) == MAILIMF_NO_ERROR ) {
@@ -496,8 +496,9 @@ RecMail*IMAPwrapper::parse_list_result(mailimap_msg_att* m_att)
snprintf( tmp, 20, "%04i-%02i-%02i %02i:%02i:%02i",
dt.date().year(),dt.date().month(), dt.date().day(), dt.time().hour(), dt.time().minute(), dt.time().second() );
//qDebug("%d iso %s %s ", date->dt_zone, tmp, head->env_date);
m->setIsoDate( QString( tmp ) );
+ mailimf_date_time_free ( date );
} else {
m->setIsoDate(head->env_date);
}
}
diff --git a/kmicromail/libmailwrapper/settings.cpp b/kmicromail/libmailwrapper/settings.cpp
index 5d2c0ad..04afe7c 100644
--- a/kmicromail/libmailwrapper/settings.cpp
+++ b/kmicromail/libmailwrapper/settings.cpp
@@ -20,8 +20,9 @@
Settings::Settings()
: QObject()
{
+ accounts.setAutoDelete( true ); ;
updateAccounts();
//qDebug("++++++++++++++++++new settings ");
}
diff --git a/kmicromail/opiemail.cpp b/kmicromail/opiemail.cpp
index 8d16ae7..af5376f 100644
--- a/kmicromail/opiemail.cpp
+++ b/kmicromail/opiemail.cpp
@@ -22,8 +22,9 @@
#include <qmessagebox.h>
#include <qtimer.h>
#include <qcursor.h>
#include <qregexp.h>
+#include <qpe/global.h>
#ifdef DESKTOP_VERSION
#include <qapplication.h>
#else
@@ -188,8 +189,10 @@ void OpieMail::slotSendQueued()
{
QMessageBox::information(0,i18n("Info"),i18n("Define a smtp account first!\n"));
return;
}
+ if ( QMessageBox::warning(this, i18n("Sending all mails"), i18n("Do you really want to send\nall queued mails?" ) , QMessageBox::Yes, QMessageBox::No ) == QMessageBox::No )
+ return;
if (smtpList.count()==1)
{
smtp = smtpList.at(0);
}
@@ -207,15 +210,18 @@ void OpieMail::slotSendQueued()
}
}
if (smtp)
{
+
+ Global::statusMessage("Sending mails...!");
SMTPwrapper * wrap = new SMTPwrapper(smtp);
if ( wrap->flushOutbox() )
{
- QMessageBox::information(0,i18n("Info"),i18n("Mail queue flushed"));
+ Global::statusMessage("Mails sent!");
}
delete wrap;
}
+ // pending refresh list view, if outgoing is displayed
}
void OpieMail::slotSearchMails()
{
@@ -429,8 +435,9 @@ void OpieMail::refreshMailView(const QValueList<RecMailP>&list)
item = new MailListViewItem(mailView,item);
item->storeData((*it));
item->showEntry();
}
+ mailView->setSorting ( 4, false );
}
void OpieMail::mailLeftClicked( QListViewItem *item )
{
diff --git a/libkdepim/kprefswidget.cpp b/libkdepim/kprefswidget.cpp
index be9ad30..f6a0b38 100644
--- a/libkdepim/kprefswidget.cpp
+++ b/libkdepim/kprefswidget.cpp
@@ -287,8 +287,9 @@ QLineEdit *KPrefsWidString::lineEdit()
KPrefsWidget::KPrefsWidget(KPrefs *prefs,QWidget *parent,const char *name) :
QWidget(parent, name )
{
mPrefs = prefs;
+ mPrefsWids.setAutoDelete( true );
}
KPrefsWidget::~KPrefsWidget()
{