quick fix for incorrect reference headers
authorstekkel <stekkel@7612ce4b-ef26-0410-bec9-ea0150e637f0>
Wed, 14 Aug 2002 16:47:54 +0000 (16:47 +0000)
committerstekkel <stekkel@7612ce4b-ef26-0410-bec9-ea0150e637f0>
Wed, 14 Aug 2002 16:47:54 +0000 (16:47 +0000)
git-svn-id: https://svn.code.sf.net/p/squirrelmail/code/trunk/squirrelmail@3304 7612ce4b-ef26-0410-bec9-ea0150e637f0

functions/smtp.php

index 892c785..eeaa28e 100644 (file)
@@ -749,13 +749,22 @@ function calculate_references($refs, $inreplyto, $old_reply_to) {
     $refer = "";
     for ($i=1;$i<count($refs[0]);$i++) {
         if (!empty($refs[0][$i])) {
-            if (preg_match("/^References:(.+)$/", $refs[0][$i], $regs)) {
+            if (preg_match("/^References:(.+)$/UA", $refs[0][$i], $regs)) {
                 $refer = trim($regs[1]);
             }
-            else {   
-                $refer .= ' ' . trim($refs[0][$i]);
-            }
-        }
+            else {
+               $refer .= ' ' . trim($regs[1]);
+           }
+            
+        }
+    }
+    $refer_a = explode(' ', $refer);
+    $refer = '';
+    foreach ($refer_a as $ref) {
+       $ref = trim($ref);
+       if ($ref{0} == '<' && $ref{(strlen($ref)-1)} == '>') {
+          $refer .= $ref . ' ';
+       }
     }
     $refer = trim($refer);
     if (strlen($refer) > 2) {