@@ -46,7 +46,7 @@ public function addDirectoryToWhitelist($directory, $suffix = '.php', $prefix =
4646 */
4747 public function addFileToWhitelist ($ filename )
4848 {
49- $ this ->whitelistedFiles [realpath ($ filename )] = true ;
49+ $ this ->whitelistedFiles [$ this -> unifyFilename ($ filename )] = true ;
5050 }
5151
5252 /**
@@ -85,7 +85,7 @@ public function removeDirectoryFromWhitelist($directory, $suffix = '.php', $pref
8585 */
8686 public function removeFileFromWhitelist ($ filename )
8787 {
88- $ filename = realpath ($ filename );
88+ $ filename = $ this -> unifyFilename ($ filename );
8989
9090 unset($ this ->whitelistedFiles [$ filename ]);
9191 }
@@ -126,7 +126,7 @@ public function isFiltered($filename)
126126 return true ;
127127 }
128128
129- $ filename = realpath ($ filename );
129+ $ filename = $ this -> unifyFilename ($ filename );
130130
131131 return !isset ($ this ->whitelistedFiles [$ filename ]);
132132 }
@@ -166,8 +166,24 @@ public function getWhitelistedFiles()
166166 *
167167 * @param array $whitelistedFiles
168168 */
169- public function setWhitelistedFiles ($ whitelistedFiles )
169+ public function setWhitelistedFiles (array $ whitelistedFiles )
170170 {
171171 $ this ->whitelistedFiles = $ whitelistedFiles ;
172+
173+ $ this ->addFilesToWhitelist (array_keys ($ whitelistedFiles ));
174+ }
175+
176+ /**
177+ * Gets unified filename with lower-cased directory path and original name of file.
178+ *
179+ * @param string $filename
180+ *
181+ * @return string
182+ */
183+ public function unifyFilename ($ filename )
184+ {
185+ $ filename = realpath ($ filename );
186+
187+ return strtolower (dirname ($ filename )) . DIRECTORY_SEPARATOR . basename ($ filename );
172188 }
173189}
0 commit comments