summaryrefslogtreecommitdiff
path: root/noncore
authoralwin <alwin>2003-12-24 14:18:28 (UTC)
committer alwin <alwin>2003-12-24 14:18:28 (UTC)
commit9d2a848b254d6c859d7054d486eedac6535d26ec (patch) (side-by-side diff)
treed3cb3479465b1cc6ef4b67898fc9649f8416c3da /noncore
parentc609fd3341bccf6150e313f4fa08ff3ca9086503 (diff)
downloadopie-9d2a848b254d6c859d7054d486eedac6535d26ec.zip
opie-9d2a848b254d6c859d7054d486eedac6535d26ec.tar.gz
opie-9d2a848b254d6c859d7054d486eedac6535d26ec.tar.bz2
hopefully fixed some memleaks and some not initialized vars
Diffstat (limited to 'noncore') (more/less context) (show whitespace changes)
-rw-r--r--noncore/net/mail/genericwrapper.cpp6
-rw-r--r--noncore/net/mail/imapwrapper.cpp12
-rw-r--r--noncore/net/mail/libmailwrapper/genericwrapper.cpp6
-rw-r--r--noncore/net/mail/libmailwrapper/imapwrapper.cpp12
-rw-r--r--noncore/net/mail/libmailwrapper/mailwrapper.cpp2
-rw-r--r--noncore/net/mail/libmailwrapper/mboxwrapper.cpp12
-rw-r--r--noncore/net/mail/libmailwrapper/smtpwrapper.cpp29
-rw-r--r--noncore/net/mail/mailwrapper.cpp2
-rw-r--r--noncore/net/mail/mboxwrapper.cpp12
-rw-r--r--noncore/net/mail/smtpwrapper.cpp29
10 files changed, 80 insertions, 42 deletions
diff --git a/noncore/net/mail/genericwrapper.cpp b/noncore/net/mail/genericwrapper.cpp
index 447cad0..c1b6e48 100644
--- a/noncore/net/mail/genericwrapper.cpp
+++ b/noncore/net/mail/genericwrapper.cpp
@@ -192,7 +192,7 @@ RecMail *Genericwrapper::parseHeader( const char *header )
size_t curTok = 0;
RecMail *mail = new RecMail();
- mailimf_fields *fields;
- mailimf_references * refs;
- mailimf_keywords*keys;
+ mailimf_fields *fields = 0;
+ mailimf_references * refs = 0;
+ mailimf_keywords*keys = 0;
QString status;
QString value;
diff --git a/noncore/net/mail/imapwrapper.cpp b/noncore/net/mail/imapwrapper.cpp
index 853e4a2..0178e33 100644
--- a/noncore/net/mail/imapwrapper.cpp
+++ b/noncore/net/mail/imapwrapper.cpp
@@ -95,11 +95,11 @@ void IMAPwrapper::logout()
void IMAPwrapper::listMessages(const QString&mailbox,QList<RecMail> &target )
{
- const char *mb;
+ const char *mb = 0;
int err = MAILIMAP_NO_ERROR;
- clist *result;
+ clist *result = 0;
clistcell *current;
// mailimap_fetch_att *fetchAtt,*fetchAttFlags,*fetchAttDate,*fetchAttSize;
- mailimap_fetch_type *fetchType;
- mailimap_set *set;
+ mailimap_fetch_type *fetchType = 0;
+ mailimap_set *set = 0;
mb = mailbox.latin1();
@@ -122,5 +122,4 @@ void IMAPwrapper::listMessages(const QString&mailbox,QList<RecMail> &target )
}
- result = clist_new();
/* the range has to start at 1!!! not with 0!!!! */
set = mailimap_set_new_interval( 1, last );
@@ -138,5 +137,4 @@ void IMAPwrapper::listMessages(const QString&mailbox,QList<RecMail> &target )
if ( err == MAILIMAP_NO_ERROR ) {
-
mailimap_msg_att * msg_att;
int i = 0;
@@ -155,5 +153,5 @@ void IMAPwrapper::listMessages(const QString&mailbox,QList<RecMail> &target )
qDebug("Error fetching headers: %s",m_imap->imap_response);
}
- mailimap_fetch_list_free(result);
+ if (result) mailimap_fetch_list_free(result);
}
diff --git a/noncore/net/mail/libmailwrapper/genericwrapper.cpp b/noncore/net/mail/libmailwrapper/genericwrapper.cpp
index 447cad0..c1b6e48 100644
--- a/noncore/net/mail/libmailwrapper/genericwrapper.cpp
+++ b/noncore/net/mail/libmailwrapper/genericwrapper.cpp
@@ -192,7 +192,7 @@ RecMail *Genericwrapper::parseHeader( const char *header )
size_t curTok = 0;
RecMail *mail = new RecMail();
- mailimf_fields *fields;
- mailimf_references * refs;
- mailimf_keywords*keys;
+ mailimf_fields *fields = 0;
+ mailimf_references * refs = 0;
+ mailimf_keywords*keys = 0;
QString status;
QString value;
diff --git a/noncore/net/mail/libmailwrapper/imapwrapper.cpp b/noncore/net/mail/libmailwrapper/imapwrapper.cpp
index 853e4a2..0178e33 100644
--- a/noncore/net/mail/libmailwrapper/imapwrapper.cpp
+++ b/noncore/net/mail/libmailwrapper/imapwrapper.cpp
@@ -95,11 +95,11 @@ void IMAPwrapper::logout()
void IMAPwrapper::listMessages(const QString&mailbox,QList<RecMail> &target )
{
- const char *mb;
+ const char *mb = 0;
int err = MAILIMAP_NO_ERROR;
- clist *result;
+ clist *result = 0;
clistcell *current;
// mailimap_fetch_att *fetchAtt,*fetchAttFlags,*fetchAttDate,*fetchAttSize;
- mailimap_fetch_type *fetchType;
- mailimap_set *set;
+ mailimap_fetch_type *fetchType = 0;
+ mailimap_set *set = 0;
mb = mailbox.latin1();
@@ -122,5 +122,4 @@ void IMAPwrapper::listMessages(const QString&mailbox,QList<RecMail> &target )
}
- result = clist_new();
/* the range has to start at 1!!! not with 0!!!! */
set = mailimap_set_new_interval( 1, last );
@@ -138,5 +137,4 @@ void IMAPwrapper::listMessages(const QString&mailbox,QList<RecMail> &target )
if ( err == MAILIMAP_NO_ERROR ) {
-
mailimap_msg_att * msg_att;
int i = 0;
@@ -155,5 +153,5 @@ void IMAPwrapper::listMessages(const QString&mailbox,QList<RecMail> &target )
qDebug("Error fetching headers: %s",m_imap->imap_response);
}
- mailimap_fetch_list_free(result);
+ if (result) mailimap_fetch_list_free(result);
}
diff --git a/noncore/net/mail/libmailwrapper/mailwrapper.cpp b/noncore/net/mail/libmailwrapper/mailwrapper.cpp
index f8efd09..6479783 100644
--- a/noncore/net/mail/libmailwrapper/mailwrapper.cpp
+++ b/noncore/net/mail/libmailwrapper/mailwrapper.cpp
@@ -56,5 +56,5 @@ QString IMAPFolder::decodeFolderName( const QString &name )
unsigned char base64[256], utf8[6];
unsigned long srcPtr = 0;
- QCString dst;
+ QCString dst = "";
QCString src = name.ascii();
diff --git a/noncore/net/mail/libmailwrapper/mboxwrapper.cpp b/noncore/net/mail/libmailwrapper/mboxwrapper.cpp
index 293ae1b..6d69263 100644
--- a/noncore/net/mail/libmailwrapper/mboxwrapper.cpp
+++ b/noncore/net/mail/libmailwrapper/mboxwrapper.cpp
@@ -5,4 +5,5 @@
#include <libetpan/mailstorage.h>
#include <qdir.h>
+#include <stdlib.h>
MBOXwrapper::MBOXwrapper(const QString & mbox_dir)
@@ -24,8 +25,11 @@ void MBOXwrapper::listMessages(const QString & mailbox, QList<RecMail> &target )
QString p = MBOXPath+"/";
p+=mailbox;
+ char*fname = 0;
- int r = mbox_mailstorage_init(storage,strdup(p.latin1()),0,0,0);
+ fname = strdup(p.latin1());
+
+ int r = mbox_mailstorage_init(storage,fname,0,0,0);
mailfolder*folder;
- folder = mailfolder_new( storage,strdup(p.latin1()),NULL);
+ folder = mailfolder_new( storage,fname,NULL);
r = mailfolder_connect(folder);
if (r != MAIL_NO_ERROR) {
@@ -33,4 +37,5 @@ void MBOXwrapper::listMessages(const QString & mailbox, QList<RecMail> &target )
mailfolder_free(folder);
mailstorage_free(storage);
+ free(fname);
return;
}
@@ -41,4 +46,5 @@ void MBOXwrapper::listMessages(const QString & mailbox, QList<RecMail> &target )
mailfolder_free(folder);
mailstorage_free(storage);
+ free(fname);
return;
}
@@ -51,4 +57,5 @@ void MBOXwrapper::listMessages(const QString & mailbox, QList<RecMail> &target )
mailfolder_free(folder);
mailstorage_free(storage);
+ free(fname);
return;
}
@@ -104,4 +111,5 @@ void MBOXwrapper::listMessages(const QString & mailbox, QList<RecMail> &target )
mailfolder_free(folder);
mailstorage_free(storage);
+ free(fname);
}
diff --git a/noncore/net/mail/libmailwrapper/smtpwrapper.cpp b/noncore/net/mail/libmailwrapper/smtpwrapper.cpp
index a7e4837..21992b4 100644
--- a/noncore/net/mail/libmailwrapper/smtpwrapper.cpp
+++ b/noncore/net/mail/libmailwrapper/smtpwrapper.cpp
@@ -442,5 +442,7 @@ char *SMTPwrapper::getFrom( mailimf_field *ffrom)
char *SMTPwrapper::getFrom( mailmime *mail )
{
+ /* no need to delete - its just a pointer to structure content */
mailimf_field *ffrom = 0;
+ char*f = 0;
ffrom = getField( mail->mm_data.mm_message.mm_fields, MAILIMF_FIELD_FROM );
return getFrom(ffrom);
@@ -564,4 +566,7 @@ void SMTPwrapper::smtpSend( mailmime *mail,bool later, SMTPaccount *smtp )
rcpts = createRcptList( mail->mm_data.mm_message.mm_fields );
smtpSend(from,rcpts,data,size,smtp);
+ if (data) {free(data);}
+ if (from) {free(from);}
+ if (rcpts) smtp_address_list_free( rcpts );
}
@@ -631,8 +636,5 @@ free_mem_session:
mailsmtp_free( session );
free_mem:
- if (rcpts) smtp_address_list_free( rcpts );
- if (data) free( data );
if (server) free( server );
- if (from) free( from );
if ( smtp->getLogin() ) {
free( user );
@@ -653,5 +655,4 @@ void SMTPwrapper::sendMail(const Mail&mail,bool later )
} else {
sendProgress = new progressMailSend();
-// sendProgress->showMaximized();
sendProgress->show();
sendProgress->setMaxMails(1);
@@ -674,4 +675,5 @@ int SMTPwrapper::sendQueuedMail(MBOXwrapper*wrap,SMTPaccount*smtp,RecMail*which)
clist *rcpts = 0;
char*from = 0;
+ int res = 0;
wrap->fetchRawBody(*which,&data,&length);
@@ -690,7 +692,20 @@ int SMTPwrapper::sendQueuedMail(MBOXwrapper*wrap,SMTPaccount*smtp,RecMail*which)
qDebug("Size: %i vs. %i",length,strlen(data));
if (rcpts && from) {
- return smtpSend(from,rcpts,data,strlen(data),smtp );
+ res = smtpSend(from,rcpts,data,length,smtp );
}
- return 0;
+ if (fields) {
+ mailimf_fields_free(fields);
+ fields = 0;
+ }
+ if (data) {
+ free(data);
+ }
+ if (from) {
+ free(from);
+ }
+ if (rcpts) {
+ smtp_address_list_free( rcpts );
+ }
+ return res;
}
@@ -718,5 +733,4 @@ bool SMTPwrapper::flushOutbox(SMTPaccount*smtp)
mailsToSend.setAutoDelete(false);
sendProgress = new progressMailSend();
-// sendProgress->showMaximized();
sendProgress->show();
sendProgress->setMaxMails(mailsToSend.count());
@@ -741,4 +755,3 @@ bool SMTPwrapper::flushOutbox(SMTPaccount*smtp)
delete wrap;
return returnValue;
-
}
diff --git a/noncore/net/mail/mailwrapper.cpp b/noncore/net/mail/mailwrapper.cpp
index f8efd09..6479783 100644
--- a/noncore/net/mail/mailwrapper.cpp
+++ b/noncore/net/mail/mailwrapper.cpp
@@ -56,5 +56,5 @@ QString IMAPFolder::decodeFolderName( const QString &name )
unsigned char base64[256], utf8[6];
unsigned long srcPtr = 0;
- QCString dst;
+ QCString dst = "";
QCString src = name.ascii();
diff --git a/noncore/net/mail/mboxwrapper.cpp b/noncore/net/mail/mboxwrapper.cpp
index 293ae1b..6d69263 100644
--- a/noncore/net/mail/mboxwrapper.cpp
+++ b/noncore/net/mail/mboxwrapper.cpp
@@ -5,4 +5,5 @@
#include <libetpan/mailstorage.h>
#include <qdir.h>
+#include <stdlib.h>
MBOXwrapper::MBOXwrapper(const QString & mbox_dir)
@@ -24,8 +25,11 @@ void MBOXwrapper::listMessages(const QString & mailbox, QList<RecMail> &target )
QString p = MBOXPath+"/";
p+=mailbox;
+ char*fname = 0;
- int r = mbox_mailstorage_init(storage,strdup(p.latin1()),0,0,0);
+ fname = strdup(p.latin1());
+
+ int r = mbox_mailstorage_init(storage,fname,0,0,0);
mailfolder*folder;
- folder = mailfolder_new( storage,strdup(p.latin1()),NULL);
+ folder = mailfolder_new( storage,fname,NULL);
r = mailfolder_connect(folder);
if (r != MAIL_NO_ERROR) {
@@ -33,4 +37,5 @@ void MBOXwrapper::listMessages(const QString & mailbox, QList<RecMail> &target )
mailfolder_free(folder);
mailstorage_free(storage);
+ free(fname);
return;
}
@@ -41,4 +46,5 @@ void MBOXwrapper::listMessages(const QString & mailbox, QList<RecMail> &target )
mailfolder_free(folder);
mailstorage_free(storage);
+ free(fname);
return;
}
@@ -51,4 +57,5 @@ void MBOXwrapper::listMessages(const QString & mailbox, QList<RecMail> &target )
mailfolder_free(folder);
mailstorage_free(storage);
+ free(fname);
return;
}
@@ -104,4 +111,5 @@ void MBOXwrapper::listMessages(const QString & mailbox, QList<RecMail> &target )
mailfolder_free(folder);
mailstorage_free(storage);
+ free(fname);
}
diff --git a/noncore/net/mail/smtpwrapper.cpp b/noncore/net/mail/smtpwrapper.cpp
index a7e4837..21992b4 100644
--- a/noncore/net/mail/smtpwrapper.cpp
+++ b/noncore/net/mail/smtpwrapper.cpp
@@ -442,5 +442,7 @@ char *SMTPwrapper::getFrom( mailimf_field *ffrom)
char *SMTPwrapper::getFrom( mailmime *mail )
{
+ /* no need to delete - its just a pointer to structure content */
mailimf_field *ffrom = 0;
+ char*f = 0;
ffrom = getField( mail->mm_data.mm_message.mm_fields, MAILIMF_FIELD_FROM );
return getFrom(ffrom);
@@ -564,4 +566,7 @@ void SMTPwrapper::smtpSend( mailmime *mail,bool later, SMTPaccount *smtp )
rcpts = createRcptList( mail->mm_data.mm_message.mm_fields );
smtpSend(from,rcpts,data,size,smtp);
+ if (data) {free(data);}
+ if (from) {free(from);}
+ if (rcpts) smtp_address_list_free( rcpts );
}
@@ -631,8 +636,5 @@ free_mem_session:
mailsmtp_free( session );
free_mem:
- if (rcpts) smtp_address_list_free( rcpts );
- if (data) free( data );
if (server) free( server );
- if (from) free( from );
if ( smtp->getLogin() ) {
free( user );
@@ -653,5 +655,4 @@ void SMTPwrapper::sendMail(const Mail&mail,bool later )
} else {
sendProgress = new progressMailSend();
-// sendProgress->showMaximized();
sendProgress->show();
sendProgress->setMaxMails(1);
@@ -674,4 +675,5 @@ int SMTPwrapper::sendQueuedMail(MBOXwrapper*wrap,SMTPaccount*smtp,RecMail*which)
clist *rcpts = 0;
char*from = 0;
+ int res = 0;
wrap->fetchRawBody(*which,&data,&length);
@@ -690,7 +692,20 @@ int SMTPwrapper::sendQueuedMail(MBOXwrapper*wrap,SMTPaccount*smtp,RecMail*which)
qDebug("Size: %i vs. %i",length,strlen(data));
if (rcpts && from) {
- return smtpSend(from,rcpts,data,strlen(data),smtp );
+ res = smtpSend(from,rcpts,data,length,smtp );
}
- return 0;
+ if (fields) {
+ mailimf_fields_free(fields);
+ fields = 0;
+ }
+ if (data) {
+ free(data);
+ }
+ if (from) {
+ free(from);
+ }
+ if (rcpts) {
+ smtp_address_list_free( rcpts );
+ }
+ return res;
}
@@ -718,5 +733,4 @@ bool SMTPwrapper::flushOutbox(SMTPaccount*smtp)
mailsToSend.setAutoDelete(false);
sendProgress = new progressMailSend();
-// sendProgress->showMaximized();
sendProgress->show();
sendProgress->setMaxMails(mailsToSend.count());
@@ -741,4 +755,3 @@ bool SMTPwrapper::flushOutbox(SMTPaccount*smtp)
delete wrap;
return returnValue;
-
}