aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xDocker/entrypoint.sh2
-rw-r--r--app/Controllers/importExportController.php18
2 files changed, 20 insertions, 0 deletions
diff --git a/Docker/entrypoint.sh b/Docker/entrypoint.sh
index bb0e1bde0..dcbd7e231 100755
--- a/Docker/entrypoint.sh
+++ b/Docker/entrypoint.sh
@@ -6,6 +6,8 @@ chown -R :www-data .
chmod -R g+r . && chmod -R g+w ./data/
find /etc/php*/ -name php.ini -exec sed -r -i "\\#^;?date.timezone#s#^.*#date.timezone = $TZ#" {} \;
+find /etc/php*/ -name php.ini -exec sed -r -i "\\#^;?post_max_size#s#^.*#post_max_size = 32M#" {} \;
+find /etc/php*/ -name php.ini -exec sed -r -i "\\#^;?upload_max_filesize#s#^.*#upload_max_filesize = 32M#" {} \;
if [ -n "$CRON_MIN" ]; then
(
diff --git a/app/Controllers/importExportController.php b/app/Controllers/importExportController.php
index 93897dde5..f2ae8238e 100644
--- a/app/Controllers/importExportController.php
+++ b/app/Controllers/importExportController.php
@@ -29,7 +29,25 @@ class FreshRSS_importExport_Controller extends Minz_ActionController {
Minz_View::prependTitle(_t('sub.import_export.title') . ' ยท ');
}
+ private static function megabytes($size_str) {
+ switch (substr($size_str, -1)) {
+ case 'M': case 'm': return (int)$size_str;
+ case 'K': case 'k': return (int)$size_str / 1024;
+ case 'G': case 'g': return (int)$size_str * 1024;
+ }
+ return $size_str;
+ }
+
+ private static function minimumMemory($mb) {
+ $mb = (int)$mb;
+ $ini = self::megabytes(ini_get('memory_limit'));
+ if ($ini < $mb) {
+ ini_set('memory_limit', $mb . 'M');
+ }
+ }
+
public function importFile($name, $path, $username = null) {
+ self::minimumMemory(256);
require_once(LIB_PATH . '/lib_opml.php');
$this->catDAO = new FreshRSS_CategoryDAO($username);