summaryrefslogtreecommitdiff
authoralwin <alwin>2004-10-17 12:24:39 (UTC)
committer alwin <alwin>2004-10-17 12:24:39 (UTC)
commit03f04b51c84b15f5b6e82a7b427adeef56c16e90 (patch) (unidiff)
treea5677873f4f21c774488a84b1789e640b2fd2846
parent29719c2132c20eb92ba3e9b4e33eccfc0f89c8b4 (diff)
downloadopie-03f04b51c84b15f5b6e82a7b427adeef56c16e90.zip
opie-03f04b51c84b15f5b6e82a7b427adeef56c16e90.tar.gz
opie-03f04b51c84b15f5b6e82a7b427adeef56c16e90.tar.bz2
the bug in libetpan seems to be fixed so we can reuse string encoding again
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/mail/libmailwrapper/abstractmail.cpp17
1 files changed, 8 insertions, 9 deletions
diff --git a/noncore/net/mail/libmailwrapper/abstractmail.cpp b/noncore/net/mail/libmailwrapper/abstractmail.cpp
index 7c1c0e4..f40aac8 100644
--- a/noncore/net/mail/libmailwrapper/abstractmail.cpp
+++ b/noncore/net/mail/libmailwrapper/abstractmail.cpp
@@ -45,67 +45,66 @@ AbstractMail* AbstractMail::getWrapper(Account*a)
45 return new POP3wrapper((POP3account*)a); 45 return new POP3wrapper((POP3account*)a);
46 break; 46 break;
47 case MAILLIB::A_NNTP: 47 case MAILLIB::A_NNTP:
48 return new NNTPwrapper((NNTPaccount*)a); 48 return new NNTPwrapper((NNTPaccount*)a);
49 break; 49 break;
50 default: 50 default:
51 return 0; 51 return 0;
52 } 52 }
53} 53}
54 54
55encodedString* AbstractMail::decode_String(const encodedString*text,const QString&enc) 55encodedString* AbstractMail::decode_String(const encodedString*text,const QString&enc)
56{ 56{
57 odebug << "Decode string start" << oendl; 57 odebug << "Decode string start" << oendl;
58 char*result_text; 58 char*result_text;
59 size_t index = 0; 59 size_t index = 0;
60 /* reset for recursive use! */ 60 /* reset for recursive use! */
61 size_t target_length = 0; 61 size_t target_length = 0;
62 result_text = 0; 62 result_text = 0;
63 int mimetype = MAILMIME_MECHANISM_7BIT; 63 int mimetype = MAILMIME_MECHANISM_7BIT;
64 if (enc.lower()=="quoted-printable") { 64 if (enc.lower()=="quoted-printable") {
65 mimetype = MAILMIME_MECHANISM_QUOTED_PRINTABLE; 65 mimetype = MAILMIME_MECHANISM_QUOTED_PRINTABLE;
66 } else if (enc.lower()=="base64") { 66 } else if (enc.lower()=="base64") {
67 mimetype = MAILMIME_MECHANISM_BASE64; 67 mimetype = MAILMIME_MECHANISM_BASE64;
68 } else if (enc.lower()=="8bit") { 68 } else if (enc.lower()=="8bit") {
69 mimetype = MAILMIME_MECHANISM_8BIT; 69 mimetype = MAILMIME_MECHANISM_8BIT;
70 } else if (enc.lower()=="binary") { 70 } else if (enc.lower()=="binary") {
71 mimetype = MAILMIME_MECHANISM_BINARY; 71 mimetype = MAILMIME_MECHANISM_BINARY;
72 } 72 }
73 73
74 int err = mailmime_part_parse(text->Content(),text->Length(),&index,mimetype, 74 int err = mailmime_part_parse(text->Content(),text->Length(),&index,mimetype,
75 &result_text,&target_length); 75 &result_text,&target_length);
76 76
77 encodedString* result = new encodedString(); 77 encodedString* result = new encodedString();
78 if (err == MAILIMF_NO_ERROR) { 78 if (err == MAILIMF_NO_ERROR) {
79 result->setContent(result_text,target_length); 79 result->setContent(result_text,target_length);
80 } 80 }
81 odebug << "Decode string finished" << oendl; 81 odebug << "Decode string finished" << oendl;
82 return result; 82 return result;
83} 83}
84 84
85QString AbstractMail::convert_String(const char*text) 85QString AbstractMail::convert_String(const char*text)
86{ 86{
87 //size_t index = 0; 87 size_t index = 0;
88 char*res = 0; 88 char*res = 0;
89 int err = MAILIMF_NO_ERROR; 89 int err = MAILIMF_NO_ERROR;
90 90
91 QString result(text); 91 QString result(text);
92 92
93 /* due a bug in libetpan it isn't usable this moment */ 93 err = mailmime_encoded_phrase_parse("iso-8859-1",
94/* int err = mailmime_encoded_phrase_parse("iso-8859-1", 94 text, strlen(text),&index, "iso-8859-1",&res);
95 text, strlen(text),&index, "iso-8859-1",&res);*/ 95 //odebug << "Input: " << text << "" << oendl;
96 //odebug << "Input: " << text << "" << oendl;
97 if (err == MAILIMF_NO_ERROR && res && strlen(res)) { 96 if (err == MAILIMF_NO_ERROR && res && strlen(res)) {
98// result = QString(res); 97 result = QString(res);
99// odebug << "Res: " << res << ", length: " << strlen(res) << "" << oendl; 98// odebug << "Res: " << res << ", length: " << strlen(res) << "" << oendl;
100 } 99 }
101 if (res) free(res); 100 if (res) free(res);
102 return result; 101 return result;
103} 102}
104 103
105/* cp & paste from launcher */ 104/* cp & paste from launcher */
106QString AbstractMail::gen_attachment_id() 105QString AbstractMail::gen_attachment_id()
107{ 106{
108 QFile file( "/proc/sys/kernel/random/uuid" ); 107 QFile file( "/proc/sys/kernel/random/uuid" );
109 if (!file.open(IO_ReadOnly ) ) 108 if (!file.open(IO_ReadOnly ) )
110 return QString::null; 109 return QString::null;
111 110