|
@@ -24,31 +24,42 @@
|
|
|
// Auto-detection
|
|
|
//
|
|
|
// if $send (the form button's name) contains "\n" as the first char
|
|
|
- // and the script is compose.php, then trim everything. Otherwise,
|
|
|
- // we don't have to worry.
|
|
|
+ // or "\r\n" as the first two (compensating for RedHat's flawed package
|
|
|
+ // and Konqueror, respectively), and the script is compose.php, then
|
|
|
+ // trim everything. Otherwise, we don't have to worry.
|
|
|
+ //
|
|
|
+ // If RedHat ever gets PHP officially upgraded past package php-4.0.4pl1-3
|
|
|
+ // or if Konqueror and PHP start working together, modify/remove this hack
|
|
|
global $send, $PHP_SELF;
|
|
|
- if (isset($send) && substr($send, 0, 1) == "\n" &&
|
|
|
- substr($PHP_SELF, -12) == "/compose.php")
|
|
|
+ $trimChars = 0;
|
|
|
+ if (isset($send) && substr($PHP_SELF, -12) == "/compose.php")
|
|
|
+ {
|
|
|
+ if (substr($send, 0, 1) == "\n")
|
|
|
+ $trimChars = 1;
|
|
|
+ if (substr($send, 0, 2) == "\r\n")
|
|
|
+ $trimChars = 2;
|
|
|
+ }
|
|
|
+ if ($trimChars)
|
|
|
{
|
|
|
if ($REQUEST_METHOD == "POST") {
|
|
|
- TrimArray($HTTP_POST_VARS);
|
|
|
+ TrimArray($HTTP_POST_VARS, $trimChars);
|
|
|
} else {
|
|
|
- TrimArray($HTTP_GET_VARS);
|
|
|
+ TrimArray($HTTP_GET_VARS, $trimChars);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
//**************************************************************************
|
|
|
// Trims every element in the array
|
|
|
//**************************************************************************
|
|
|
- function TrimArray(&$array) {
|
|
|
+ function TrimArray(&$array, $trimChars) {
|
|
|
foreach ($array as $k => $v) {
|
|
|
global $$k;
|
|
|
if (is_array($$k)) {
|
|
|
foreach ($$k as $k2 => $v2) {
|
|
|
- $$k[$k2] = substr($v2, 1);
|
|
|
+ $$k[$k2] = substr($v2, $trimChars);
|
|
|
}
|
|
|
} else {
|
|
|
- $$k = substr($v, 1);
|
|
|
+ $$k = substr($v, $trimChars);
|
|
|
}
|
|
|
}
|
|
|
}
|