diff --git a/php/elFinder.class.php b/php/elFinder.class.php index a1971c717..eb2ec9df3 100644 --- a/php/elFinder.class.php +++ b/php/elFinder.class.php @@ -2839,6 +2839,16 @@ class elFinder { return $metadata['seekable']; } + /** + * Rewind stream resource + * + * @param resource $resource + * @return void + */ + public static function rewind($resource) { + self::isSeekableStream($resource) && rewind($resource); + } + /** * serialize and base64_encode of session data (If needed) * diff --git a/php/elFinderConnector.class.php b/php/elFinderConnector.class.php index 6f2eda2f5..2819bec22 100644 --- a/php/elFinderConnector.class.php +++ b/php/elFinderConnector.class.php @@ -183,7 +183,7 @@ class elFinderConnector { } } if (is_null($psize)){ - rewind($fp); + elFinder::rewind($fp); } } else { header('Accept-Ranges: none'); diff --git a/php/elFinderVolumeMsSQL.class.php b/php/elFinderVolumeMsSQL.class.php index 5d992b95e..b16f22971 100644 --- a/php/elFinderVolumeMsSQL.class.php +++ b/php/elFinderVolumeMsSQL.class.php @@ -751,7 +751,7 @@ class elFinderVolumeMsSQL extends elFinderVolumeDriver { * @author Dmitry Levashov */ protected function _setContent($path, $fp) { - rewind($fp); + elFinder::rewind($fp); $fstat = fstat($fp); $size = $fstat['size']; @@ -778,7 +778,7 @@ class elFinderVolumeMsSQL extends elFinderVolumeDriver { $h = !empty($stat['height']) ? $stat['height'] : 0; $id = $this->_joinPath($dir, $name); - rewind($fp); + elFinder::rewind($fp); $stat = fstat($fp); $size = $stat['size']; if (($tmpfile = tempnam($this->tmpPath, $this->id))) { @@ -812,7 +812,7 @@ class elFinderVolumeMsSQL extends elFinderVolumeDriver { $content = ''; - rewind($fp); + elFinder::rewind($fp); while (!feof($fp)) { $content .= fread($fp, 8192); } diff --git a/php/elFinderVolumeMySQL.class.php b/php/elFinderVolumeMySQL.class.php index b34605a7f..631294be2 100644 --- a/php/elFinderVolumeMySQL.class.php +++ b/php/elFinderVolumeMySQL.class.php @@ -738,7 +738,7 @@ class elFinderVolumeMySQL extends elFinderVolumeDriver { * @author Dmitry Levashov */ protected function _setContent($path, $fp) { - rewind($fp); + elFinder::rewind($fp); $fstat = fstat($fp); $size = $fstat['size']; @@ -764,7 +764,7 @@ class elFinderVolumeMySQL extends elFinderVolumeDriver { $h = !empty($stat['height']) ? $stat['height'] : 0; $id = $this->_joinPath($dir, $name); - rewind($fp); + elFinder::rewind($fp); $stat = fstat($fp); $size = $stat['size']; @@ -794,7 +794,7 @@ class elFinderVolumeMySQL extends elFinderVolumeDriver { $content = ''; - rewind($fp); + elFinder::rewind($fp); while (!feof($fp)) { $content .= fread($fp, 8192); }