CRM-15163 - CRM_Utils_Check_Security - Windows support
authorTim Otten <totten@civicrm.org>
Wed, 27 Aug 2014 22:13:17 +0000 (15:13 -0700)
committerTim Otten <totten@civicrm.org>
Wed, 27 Aug 2014 22:18:40 +0000 (15:18 -0700)
On Windows-PHP setups, paths may have a mix of back-slashes and
forward-slashes.  For this security check, we'll normalize to
forward-slashses to simplify the path manipulation.

CRM/Utils/Check/Security.php

index da8e706f58444aa8d27a38fc030c13c80ea46539..a6de3924a51611a5f697150c601908f1b62dfd35 100644 (file)
@@ -88,7 +88,7 @@ class CRM_Utils_Check_Security {
     $config = CRM_Core_Config::singleton();
 
     $log = CRM_Core_Error::createDebugLogger();
-    $log_filename = $log->_filename;
+    $log_filename = str_replace('\\', '/', $log->_filename);
 
     $filePathMarker = $this->getFilePathMarker();
 
@@ -282,7 +282,7 @@ class CRM_Utils_Check_Security {
     $config = CRM_Core_Config::singleton();
 
     list ($heuristicBaseUrl, $ignore) = explode($filePathMarker, $config->imageUploadURL);
-    list ($ignore, $heuristicSuffix) = explode($filePathMarker, $targetDir);
+    list ($ignore, $heuristicSuffix) = explode($filePathMarker, str_replace('\\', '/', $targetDir));
     return $heuristicBaseUrl . $filePathMarker . $heuristicSuffix;
   }
 }