Page MenuHomeIn-Portal Phabricator

D349.id869.diff
No OneTemporary

File Metadata

Created
Sat, Jun 28, 8:41 PM

D349.id869.diff

Index: core/kernel/globals.php
===================================================================
--- core/kernel/globals.php
+++ core/kernel/globals.php
@@ -997,6 +997,33 @@
}
}
+ /**
+ * Parse ini size
+ *
+ * @param string $size Size.
+ *
+ * @return integer
+ */
+ public static function parseIniSize($size)
+ {
+ $result = (int)$size;
+ $size = strtolower($size);
+
+ if ( strpos($size, 'k') ) {
+ return $result * 1024;
+ }
+
+ if ( strpos($size, 'm') ) {
+ return $result * 1024 * 1024;
+ }
+
+ if ( strpos($size, 'g') ) {
+ return $result * 1024 * 1024 * 1024;
+ }
+
+ return $result;
+ }
+
}
/**
Index: core/kernel/startup.php
===================================================================
--- core/kernel/startup.php
+++ core/kernel/startup.php
@@ -114,7 +114,13 @@
define('IMAGES_PATH', WRITEBALE_BASE . '/images/');
define('IMAGES_PENDING_PATH', IMAGES_PATH . 'pending/');
- define('MAX_UPLOAD_SIZE', min(ini_get('upload_max_filesize'), ini_get('post_max_size'))*1024*1024);
+
+ $upload_limit = kUtil::parseIniSize(ini_get('upload_max_filesize'));
+ $post_max_size = ini_get('post_max_size');
+ $upload_limit = $post_max_size !== '0' ? min($upload_limit, kUtil::parseIniSize($post_max_size)) : $upload_limit;
+ $memory_limit = ini_get('memory_limit');
+ $upload_limit = $memory_limit !== '-1' ? min($upload_limit, kUtil::parseIniSize($memory_limit)) : $upload_limit;
+ define('MAX_UPLOAD_SIZE', $upload_limit);
define('EDITOR_PATH', $vars['EditorPath']);

Event Timeline