]> git.joonet.de Git - adminer.git/commitdiff
Do not limit unlimited memory, fix number conversion warning
authorMichael Graß <info@mgrass.biz>
Thu, 19 Aug 2021 10:33:07 +0000 (12:33 +0200)
committerJakub Vrana <jakub@vrana.cz>
Wed, 19 Feb 2025 10:16:38 +0000 (11:16 +0100)
adminer/include/editing.inc.php
adminer/sql.inc.php

index 0f29742d5464f607908932f69a9c2871b47789f0..30145489c9bbc8f4fb70924938e05323a5ae7d1f 100644 (file)
@@ -518,9 +518,9 @@ function tar_file($filename, $tmp_file) {
 function ini_bytes($ini) {
        $val = ini_get($ini);
        switch (strtolower(substr($val, -1))) {
-               case 'g': $val *= 1024; // no break
-               case 'm': $val *= 1024; // no break
-               case 'k': $val *= 1024;
+               case 'g': $val = (int)$val * 1024; // no break
+               case 'm': $val = (int)$val * 1024; // no break
+               case 'k': $val = (int)$val * 1024;
        }
        return $val;
 }
index 216e36e2893b9a041b7580edabb4929b64f3288b..473997f9d3559e4d3ec63b094d45df85b55a624f 100644 (file)
@@ -32,8 +32,8 @@ if (!$error && $_POST) {
        }
 
        if (is_string($query)) { // get_file() returns error as number, fread() as false
-               if (function_exists('memory_get_usage')) {
-                       @ini_set("memory_limit", max(ini_bytes("memory_limit"), 2 * strlen($query) + memory_get_usage() + 8e6)); // @ - may be disabled, 2 - substr and trim, 8e6 - other variables
+               if (function_exists('memory_get_usage') && ($memory_limit = ini_bytes("memory_limit")) != "-1") {
+                       @ini_set("memory_limit", max($memory_limit, 2 * strlen($query) + memory_get_usage() + 8e6)); // @ - may be disabled, 2 - substr and trim, 8e6 - other variables
                }
 
                if ($query != "" && strlen($query) < 1e6) { // don't add big queries