diff options
author | Taylor R Campbell <campbell+ledger@mumble.net> | 2024-04-27 19:54:23 +0000 |
---|---|---|
committer | John Wiegley <johnw@newartisans.com> | 2024-08-06 14:51:38 -1000 |
commit | d9967c2638052730c6eeb1624586d633d6482003 (patch) | |
tree | f6dd9d0a94cc633f4e1a4f0588c2cb613e0100e2 /src/item.cc | |
parent | 762353945a744ae4b89970b9e08c2c22a52ddbff (diff) | |
download | fork-ledger-d9967c2638052730c6eeb1624586d633d6482003.tar.gz fork-ledger-d9967c2638052730c6eeb1624586d633d6482003.tar.bz2 fork-ledger-d9967c2638052730c6eeb1624586d633d6482003.zip |
Avoid ctype abuse.
fix https://github.com/ledger/ledger/issues/2338
fix https://github.com/ledger/ledger/issues/2340
Diffstat (limited to 'src/item.cc')
-rw-r--r-- | src/item.cc | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/item.cc b/src/item.cc index c5db3cad..052d70eb 100644 --- a/src/item.cc +++ b/src/item.cc @@ -157,7 +157,8 @@ void item_t::parse_tags(const char * p, if (! std::strchr(p, ':')) { if (const char * b = std::strchr(p, '[')) { if (*(b + 1) != '\0' && - (std::isdigit(*(b + 1)) || *(b + 1) == '=')) { + (std::isdigit(static_cast<unsigned char>(*(b + 1))) || + *(b + 1) == '=')) { if (const char * e = std::strchr(b, ']')) { char buf[256]; std::strncpy(buf, b + 1, static_cast<std::size_t>(e - b - 1)); |