Browse Source

Correct references trimming: array_walk can't in all PHP versions use
a callback function that is a member function. Moving the function out
of the class seems the best solution.

Thijs Kinkhorst 19 years ago
parent
commit
5641a73844
2 changed files with 10 additions and 8 deletions
  1. 1 8
      class/deliver/Deliver.class.php
  2. 9 0
      functions/strings.php

+ 1 - 8
class/deliver/Deliver.class.php

@@ -742,7 +742,7 @@ class Deliver {
         $aReferences[] = $message_id;
 
         // sanitize the array: trim whitespace, remove dupes
-        array_walk($aReferences, 'trim_value');
+        array_walk($aReferences, 'sq_trim_value');
         $aReferences = array_unique($aReferences);
 
         while ( count($aReferences) > 4 && strlen(implode(' ', $aReferences)) >= 986 ) {
@@ -751,13 +751,6 @@ class Deliver {
         return implode(' ', $aReferences);
     }
 
-    /**
-     * Callback function to trim whitespace from a value, to be used in array_walk
-     */
-    function trim_value ( &$value ) {
-        $value = trim($value);
-    }
-
     /**
      * Converts ip address to hexadecimal string
      *

+ 9 - 0
functions/strings.php

@@ -1280,4 +1280,13 @@ function sq_count8bit($string) {
     return $count;
 }
 
+/**
+ * Callback function to trim whitespace from a value, to be used in array_walk
+ * @param string $value value to trim
+ * @since 1.5.2 and 1.4.7
+ */
+function sq_trim_value ( &$value ) {
+    $value = trim($value);
+}
+
 ?>