summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorReikion <Reikion@users.noreply.github.com>2016-11-10 22:20:41 +0100
committerFlorian Pritz <bluewind@xinu.at>2016-11-10 23:12:43 +0100
commit47ad013fb3cdbac5f0b1276b0197d6def055e95e (patch)
tree873675150894901b1d300b0a9a40e043f9dcf236
parentfdb2cd4105b4fd273c32c5c2fa6b6c93d46e7182 (diff)
Make sure that return_bytes function returns int value
php_admin_value[post_max_size] in PHP fpm pool config set to big integer (i.e. 106954752) causes fb-client to crash if file is bigger than 10485760 bytes with traceback Traceback (most recent call last): [...] File "/usr/bin/fb", line 138, in upload_files if self.serverConfig is not None and (currentChunkSize + filesize > self.serverConfig["request_max_size"] \ TypeError: unorderable types: int() > str() because api/v2.1.0/file/get_config returns "request_max_size" as string Changes by Florian Pritz: - Add test - Add github PR body as commit message - Split off indentation change Signed-off-by: Florian Pritz <bluewind@xinu.at>
-rw-r--r--application/helpers/filebin_helper.php2
-rw-r--r--application/test/tests/test_filebin_helper.php1
2 files changed, 2 insertions, 1 deletions
diff --git a/application/helpers/filebin_helper.php b/application/helpers/filebin_helper.php
index 093f7a8bd..3344e5ecf 100644
--- a/application/helpers/filebin_helper.php
+++ b/application/helpers/filebin_helper.php
@@ -375,7 +375,7 @@ function return_bytes($size_str)
case 'K': case 'k': return (int)$size_str * 1024;
case 'M': case 'm': return (int)$size_str * 1048576;
case 'G': case 'g': return (int)$size_str * 1073741824;
- default: return $size_str;
+ default: return (int)$size_str;
}
}
diff --git a/application/test/tests/test_filebin_helper.php b/application/test/tests/test_filebin_helper.php
index edebb13ca..c505dfe8a 100644
--- a/application/test/tests/test_filebin_helper.php
+++ b/application/test/tests/test_filebin_helper.php
@@ -66,5 +66,6 @@ class test_filebin_helper extends \test\Test {
$this->t->is(return_bytes("1M"), 1*1024*1024, "1M");
$this->t->is(return_bytes("1G"), 1*1024*1024*1024, "1G");
$this->t->is(return_bytes("1P"), "1P", "unhandled text: 1P");
+ $this->t->ok(return_bytes("106954752") === 106954752, "value without unit is returned as int");
}
}