summaryrefslogtreecommitdiff
path: root/src/util.cc
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2015-06-21 18:04:30 +0900
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2015-06-21 19:29:54 +0900
commit318c804504e32b7a0bbdbb35336d2e918000d80a (patch)
treefad396aee04c44a29ee79b33e1675db2275146c0 /src/util.cc
parent8ba9b0474747185708a25943fb6d2f97b3d9b17f (diff)
Use user-defined literal for k, m, and g (powers of 1024)
Diffstat (limited to 'src/util.cc')
-rw-r--r--src/util.cc20
1 files changed, 10 insertions, 10 deletions
diff --git a/src/util.cc b/src/util.cc
index 1905f637..b94be42d 100644
--- a/src/util.cc
+++ b/src/util.cc
@@ -1132,11 +1132,11 @@ ssize_t parse_content_disposition(char *dest, size_t destlen,
std::string getContentDispositionFilename(const std::string& header)
{
- char cdval[1024];
- size_t cdvallen = sizeof(cdval);
+ std::array<char, 1_k> cdval;
+ size_t cdvallen = cdval.size();
const char* charset;
size_t charsetlen;
- ssize_t rv = parse_content_disposition(cdval, cdvallen,
+ ssize_t rv = parse_content_disposition(cdval.data(), cdvallen,
&charset, &charsetlen,
header.c_str(), header.size());
if(rv == -1) {
@@ -1145,9 +1145,9 @@ std::string getContentDispositionFilename(const std::string& header)
std::string res;
if(!charset || strieq(charset, charset+charsetlen, "iso-8859-1")) {
- res = iso8859p1ToUtf8(cdval, rv);
+ res = iso8859p1ToUtf8(cdval.data(), rv);
} else {
- res.assign(cdval, rv);
+ res.assign(cdval.data(), rv);
}
if(!detectDirTraversal(res) &&
res.find_first_of("/\\") == std::string::npos) {
@@ -1378,11 +1378,11 @@ int64_t getRealSize(const std::string& sizeWithUnit)
switch(sizeWithUnit[p]) {
case 'K':
case 'k':
- mult = 1024;
+ mult = 1_k;
break;
case 'M':
case 'm':
- mult = 1024*1024;
+ mult = 1_m;
break;
}
size.assign(sizeWithUnit.begin(), sizeWithUnit.begin()+p);
@@ -1405,8 +1405,8 @@ std::string abbrevSize(int64_t size)
int64_t t = size;
size_t uidx = 0;
int r = 0;
- while(t >= 1024 && uidx+1 < sizeof(UNITS)/sizeof(UNITS[0])) {
- lldiv_t d = lldiv(t, 1024);
+ while(t >= 1_k && uidx+1 < sizeof(UNITS)/sizeof(UNITS[0])) {
+ lldiv_t d = lldiv(t, 1_k);
t = d.quot;
r = d.rem;
++uidx;
@@ -1420,7 +1420,7 @@ std::string abbrevSize(int64_t size)
res += itos(t, true);
if(t < 10 && uidx > 0) {
res += ".";
- res += itos(r*10/1024);
+ res += itos(r * 10 / 1_k);
}
res += UNITS[uidx];
return res;