projects
/
awesomized
/
libmemcached
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
|
github
raw
|
inline
| side by side
libmemcached: fix #125: allocation failure on negative expiration
[awesomized/libmemcached]
/
src
/
bin
/
memerror.cc
diff --git
a/src/bin/memerror.cc
b/src/bin/memerror.cc
index f78afed7328fa4b5f9a496f3f619430d6f339a7a..fc4b6c9de4f4b62790feda6727088d2d5766784b 100644
(file)
--- a/
src/bin/memerror.cc
+++ b/
src/bin/memerror.cc
@@
-1,6
+1,6
@@
/*
+--------------------------------------------------------------------+
/*
+--------------------------------------------------------------------+
- | libmemcached
- C/C++ Client Library for memcached
|
+ | libmemcached
-awesome - C/C++ Client Library for memcached
|
+--------------------------------------------------------------------+
| Redistribution and use in source and binary forms, with or without |
| modification, are permitted under the terms of the BSD license. |
+--------------------------------------------------------------------+
| Redistribution and use in source and binary forms, with or without |
| modification, are permitted under the terms of the BSD license. |
@@
-9,7
+9,7
@@
| the terms online at: https://opensource.org/licenses/BSD-3-Clause |
+--------------------------------------------------------------------+
| Copyright (c) 2006-2014 Brian Aker https://datadifferential.com/ |
| the terms online at: https://opensource.org/licenses/BSD-3-Clause |
+--------------------------------------------------------------------+
| Copyright (c) 2006-2014 Brian Aker https://datadifferential.com/ |
- | Copyright (c) 2020
Michael Wallner <mike@php.net>
|
+ | Copyright (c) 2020
-2021 Michael Wallner https://awesome.co/
|
+--------------------------------------------------------------------+
*/
+--------------------------------------------------------------------+
*/
@@
-52,6
+52,7
@@
int main(int argc, char *argv[]) {
exit(EXIT_FAILURE);
}
exit(EXIT_FAILURE);
}
+ auto exit_code = EXIT_SUCCESS;
for (auto arg = argp; *arg; ++arg) {
auto code = std::stoul(*arg);
auto rc = static_cast<memcached_return_t>(code);
for (auto arg = argp; *arg; ++arg) {
auto code = std::stoul(*arg);
auto rc = static_cast<memcached_return_t>(code);
@@
-60,8
+61,13
@@
int main(int argc, char *argv[]) {
std::cout << "code: " << code << "\n";
std::cout << "name: ";
}
std::cout << "code: " << code << "\n";
std::cout << "name: ";
}
- std::cout << memcached_strerror(nullptr, rc) << std::endl;
+ if (rc >= MEMCACHED_MAXIMUM_RETURN) {
+ exit_code = EXIT_FAILURE;
+ std::cerr << memcached_strerror(nullptr, rc) << std::endl;
+ } else {
+ std::cout << memcached_strerror(nullptr, rc) << std::endl;
+ }
}
}
- exit(
EXIT_SUCCESS
);
+ exit(
exit_code
);
}
}