Репозиторий ALT Linux backports/2.4
Последнее обновление: 9 июля 2008 | Пакетов: 497 | Посещений: 1491984
 поиск   регистрация   авторизация 
 
Группа :: Графические оболочки/KDE
Пакет: kdepim

 Главная   Изменения   Спек   Патчи   Загрузить   Bugs and FR 

Патч: 3.1.1-kmail-quoteprintable-attach.patch


--- kdenetwork-3.1.1/kmail/kmmsgpartdlg.cpp~	2003-03-31 12:14:59 +0400
+++ kdenetwork-3.1.1/kmail/kmmsgpartdlg.cpp	2003-03-31 12:39:31 +0400
@@ -429,13 +429,12 @@
     QCString encoding = KMMessage::autoDetectCharset( mMsgPart->charset(),
       KMMessage::preferredCharsets(), name );
     if ( encoding.isEmpty() ) encoding = "utf-8";
-    QCString encName = KMMsgBase::encodeRFC2231String( name, encoding );
+    QCString encName = KMMsgBase::encodeQuotedPrintable( QTextCodec::codecForName(encoding)->fromUnicode(name) );
 
     cDisp += " filename";
     if ( name != QString( encName ) )
-      cDisp += "*=" + encName;
-    else
-      cDisp += "=\"" + encName + '"';
+      encName = "=?" + encoding + "?Q?" + encName + "?=";
+    cDisp += "=\"" + encName + '"';
     mMsgPart->setContentDisposition( cDisp );
   }
 
--- kdenetwork-3.1.1/kmail/kmcomposewin.cpp~	2003-03-31 15:07:05 +0400
+++ kdenetwork-3.1.1/kmail/kmcomposewin.cpp	2003-03-31 15:10:38 +0400
@@ -3972,8 +3972,7 @@
   QCString encoding = KMMessage::autoDetectCharset(mCharset,
     KMMessage::preferredCharsets(), name);
   if (encoding.isEmpty()) encoding = "utf-8";
-  QCString encName = KMMsgBase::encodeRFC2231String(name, encoding);
-  bool RFC2231encoded = name != QString(encName);
+  QCString encName = KMMsgBase::encodeQuotedPrintable( QTextCodec::codecForName(encoding)->fromUnicode(name) );
 
   // create message part
   msgPart = new KMMessagePart;
@@ -3987,7 +3986,7 @@
   msgPart->setTypeStr((*it).mimeType.left(slash));
   msgPart->setSubtypeStr((*it).mimeType.mid(slash+1));
   msgPart->setContentDisposition(QCString("attachment; filename")
-    + ((RFC2231encoded) ? "*" : "") +  "=\"" + encName + "\"");
+    + "=\"=?" + encoding + "?Q?" + encName + "?=\"");
 
   mapAtmLoadData.remove(it);
 
 
design & coding: Vladimir Lettiev aka crux © 2004-2005