summaryrefslogtreecommitdiffabout
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--kmicromail/libmailwrapper/abstractmail.cpp12
-rw-r--r--kmicromail/libmailwrapper/genericwrapper.cpp4
2 files changed, 7 insertions, 9 deletions
diff --git a/kmicromail/libmailwrapper/abstractmail.cpp b/kmicromail/libmailwrapper/abstractmail.cpp
index 673f288..2d7533c 100644
--- a/kmicromail/libmailwrapper/abstractmail.cpp
+++ b/kmicromail/libmailwrapper/abstractmail.cpp
@@ -77,46 +77,44 @@ encodedString* AbstractMail::decode_String(const encodedString*text,const QStrin
77 mimetype = MAILMIME_MECHANISM_BINARY; 77 mimetype = MAILMIME_MECHANISM_BINARY;
78 } 78 }
79 79
80 int err = mailmime_part_parse(text->Content(),text->Length(),&index,mimetype, 80 int err = mailmime_part_parse(text->Content(),text->Length(),&index,mimetype,
81 &result_text,&target_length); 81 &result_text,&target_length);
82 82
83 encodedString* result = new encodedString(); 83 encodedString* result = new encodedString();
84 if (err == MAILIMF_NO_ERROR) { 84 if (err == MAILIMF_NO_ERROR) {
85 result->setContent(result_text,target_length); 85 result->setContent(result_text,target_length);
86 } 86 }
87 //odebug << "Decode string finished" << oendl; 87 //odebug << "Decode string finished" << oendl;
88 return result; 88 return result;
89} 89}
90 90
91QString AbstractMail::convert_String(const char*text) 91QString AbstractMail::convert_String(const char*text)
92{ 92{
93 //size_t index = 0; 93 size_t index = 0;
94 char*res = 0; 94 char*res = 0;
95 int err = MAILIMF_NO_ERROR; 95 int err = MAILIMF_NO_ERROR;
96 96
97 QString result(text); 97 QString result(text);
98 98
99 /* due a bug in libetpan it isn't usable this moment */ 99 err = mailmime_encoded_phrase_parse("iso-8859-1",
100/* int err = mailmime_encoded_phrase_parse("iso-8859-1", 100 text, strlen(text),&index, "iso-8859-1",&res);
101 text, strlen(text),&index, "iso-8859-1",&res);*/
102 //odebug << "Input: " << text << "" << oendl;
103 if (err == MAILIMF_NO_ERROR && res && strlen(res)) { 101 if (err == MAILIMF_NO_ERROR && res && strlen(res)) {
104// result = QString(res); 102 result = QString(res);
105// odebug << "Res: " << res << ", length: " << strlen(res) << "" << oendl;
106 } 103 }
104 //qDebug("convert_String:%s ",result.latin1() );
107 if (res) free(res); 105 if (res) free(res);
108 return result; 106 return result;
109} 107}
110 108
111/* cp & paste from launcher */ 109/* cp & paste from launcher */
112QString AbstractMail::gen_attachment_id() 110QString AbstractMail::gen_attachment_id()
113{ 111{
114 QFile file( "/proc/sys/kernel/random/uuid" ); 112 QFile file( "/proc/sys/kernel/random/uuid" );
115 if (!file.open(IO_ReadOnly ) ) 113 if (!file.open(IO_ReadOnly ) )
116 return QString::null; 114 return QString::null;
117 115
118 QTextStream stream(&file); 116 QTextStream stream(&file);
119 117
120 return "{" + stream.read().stripWhiteSpace() + "}"; 118 return "{" + stream.read().stripWhiteSpace() + "}";
121} 119}
122 120
diff --git a/kmicromail/libmailwrapper/genericwrapper.cpp b/kmicromail/libmailwrapper/genericwrapper.cpp
index e691082..d89a5f9 100644
--- a/kmicromail/libmailwrapper/genericwrapper.cpp
+++ b/kmicromail/libmailwrapper/genericwrapper.cpp
@@ -265,37 +265,37 @@ void Genericwrapper::traverseBody(RecBodyP&target,mailmessage*message,mailmime*m
265 part->setType("message"); 265 part->setType("message");
266 part->setSubtype("rfc822"); 266 part->setSubtype("rfc822");
267 bodyCache[b]=new encodedString(data,len); 267 bodyCache[b]=new encodedString(data,len);
268 target->addPart(part); 268 target->addPart(part);
269 } 269 }
270 if (mime->mm_data.mm_message.mm_msg_mime != NULL) { 270 if (mime->mm_data.mm_message.mm_msg_mime != NULL) {
271 traverseBody(target,message,mime->mm_data.mm_message.mm_msg_mime,countlist,current_rec+1); 271 traverseBody(target,message,mime->mm_data.mm_message.mm_msg_mime,countlist,current_rec+1);
272 } 272 }
273 } 273 }
274 break; 274 break;
275 } 275 }
276} 276}
277 277
278RecBodyP Genericwrapper::parseMail( mailmessage * msg ) 278RecBodyP Genericwrapper::parseMail( mailmessage * msg )
279{ 279{
280 int err = MAILIMF_NO_ERROR; 280 int err = MAILIMF_NO_ERROR;
281 mailmime_single_fields fields; 281 //mailmime_single_fields fields;
282 /* is bound to msg and will be freed there */ 282 /* is bound to msg and will be freed there */
283 mailmime * mime=0; 283 mailmime * mime=0;
284 RecBodyP body = new RecBody(); 284 RecBodyP body = new RecBody();
285 memset(&fields, 0, sizeof(struct mailmime_single_fields)); 285 //memset(&fields, 0, sizeof(struct mailmime_single_fields));
286 err = mailmessage_get_bodystructure(msg,&mime); 286 err = mailmessage_get_bodystructure(msg,&mime);
287 QValueList<int>recList; 287 QValueList<int>recList;
288 traverseBody(body,msg,mime,recList); 288 traverseBody(body,msg,mime,recList);
289 return body; 289 return body;
290} 290}
291 291
292 292
293QString Genericwrapper::parseAddressList( mailimf_address_list *list ) 293QString Genericwrapper::parseAddressList( mailimf_address_list *list )
294{ 294{
295 QString result( "" ); 295 QString result( "" );
296 296
297 bool first = true; 297 bool first = true;
298 if (list == 0) return result; 298 if (list == 0) return result;
299 for ( clistiter *current = clist_begin( list->ad_list ); current != NULL; current = current->next ) { 299 for ( clistiter *current = clist_begin( list->ad_list ); current != NULL; current = current->next ) {
300 mailimf_address *addr = (mailimf_address *) current->data; 300 mailimf_address *addr = (mailimf_address *) current->data;
301 301