db74c9f6fa700f2ee151e538bed565144fc7ac9b
The original implementation was based on ZipArchive::getStream() which turns out to be very slow and if the archive contains many files, the unzipping performance is very slow. The patch changes the implementation to use ZipArchive::extractTo() unless the extracted entry path contains a folder name ending with dot (such as some/path./to/file.txt). There is a known upstream bug in the PHP ZIP extension #77214 (also #74619 and #69477) so that we fall back to keep using the stream in those cases.
.-..-.
_____ | || |
/____/-.---_ .---. .---. .-.| || | .---.
| | _ _ |/ _ \/ _ \/ _ || |/ __ \
* | | | | | || |_| || |_| || |_| || || |___/
|_| |_| |_|\_____/\_____/\_____||_|\_____)
Moodle - the world's open source learning platform
Moodle <https://moodle.org> is a learning platform designed to provide
educators, administrators and learners with a single robust, secure and
integrated system to create personalised learning environments.
You can download Moodle <https://download.moodle.org> and run it on your own
web server, ask one of our Moodle Partners <https://moodle.com/partners/> to
assist you, or have a MoodleCloud site <https://moodle.com/cloud/> set up for
you.
Moodle is widely used around the world by universities, schools, companies and
all manner of organisations and individuals.
Moodle is provided freely as open source software, under the GNU General Public
License <https://docs.moodle.org/dev/License>.
Moodle is written in PHP and JavaScript and uses an SQL database for storing
the data.
See <https://docs.moodle.org> for details of Moodle's many features.
Description
Languages
PHP
85.9%
JavaScript
9.2%
Gherkin
2.3%
CSS
1.2%
Mustache
1%
Other
0.3%