[Xfce4-commits] <postler:master> Always decode '= ' and '_' as spaces

Christian Dywan noreply at xfce.org
Thu Jul 29 12:26:11 CEST 2010


Updating branch refs/heads/master
         to 3523951927da73d26be138ee7706a7570df14929 (commit)
       from 8d44963991d98aaab517862872714428e7897055 (commit)

commit 3523951927da73d26be138ee7706a7570df14929
Author: Christian Dywan <christian at twotoasts.de>
Date:   Tue Jul 27 16:13:19 2010 +0200

    Always decode '= ' and '_' as spaces

 postler/postler-content.vala  |    7 ++++---
 postler/postler-messages.vala |    9 +++++----
 2 files changed, 9 insertions(+), 7 deletions(-)

diff --git a/postler/postler-content.vala b/postler/postler-content.vala
index 1bc4f83..e3de4b6 100644
--- a/postler/postler-content.vala
+++ b/postler/postler-content.vala
@@ -268,15 +268,16 @@ public class Postler.Content : WebKit.WebView {
     };
 
     internal static string quoted_printable_decode (string quoted) {
+        string unquoted = quoted.replace (" =", " ").replace ("_", " ");
         try {
             var regex = new GLib.Regex ("([=]([0-9A-F][0-9A-F]))");
-            return regex.replace (quoted, -1, 0, "&#x\\2;");//.replace ("_", " ");
+            return regex.replace (unquoted, -1, 0, "&#x\\2;");
         }
         catch (GLib.RegexError error) {
             GLib.critical (_("Failed to decode string \"%s\": %s"),
-                           quoted, error.message);
+                           unquoted, error.message);
         }
-        return quoted;
+        return unquoted;
     }
 
     static string parse_encoded (string quoted, out string charset) {
diff --git a/postler/postler-messages.vala b/postler/postler-messages.vala
index 69fa84b..d3431c0 100644
--- a/postler/postler-messages.vala
+++ b/postler/postler-messages.vala
@@ -228,16 +228,17 @@ public class Postler.Messages : Gtk.TreeView {
     }
 
     internal static string quoted_printable_decode (string quoted) {
+        string unquoted = quoted.replace (" =", " ").replace ("_", " ");
         try {
             var regex = new GLib.Regex ("([=]([0-9A-F][0-9A-F]))");
-            return regex.replace_eval (quoted, -1, 0, 0,
-                                       evaluate_hex, null).replace ("_", " ");
+            return regex.replace_eval (unquoted, -1, 0, 0,
+                                       evaluate_hex, null);
         }
         catch (GLib.RegexError error) {
             GLib.critical (_("Failed to decode string \"%s\": %s"),
-                           quoted, error.message);
+                           unquoted, error.message);
         }
-        return quoted;
+        return unquoted;
     }
 
     static string decode_piece (string encoded, out string charset) {



More information about the Xfce4-commits mailing list