X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=plocate.cpp;h=66dfa918728ff7248f0705a92b857bca20e9ad62;hb=99a0a43a777176583f3525e11ef62185dd2be740;hp=9f3928b1a8349e8db0e57d82bb31fd8df59171ef;hpb=8c55aee2b5a22c067989043e5adb1cfce4ffddbf;p=plocate diff --git a/plocate.cpp b/plocate.cpp index 9f3928b..66dfa91 100644 --- a/plocate.cpp +++ b/plocate.cpp @@ -1,4 +1,5 @@ #include "db.h" +#include "dprintf.h" #include "io_uring_engine.h" #include "parse_trigrams.h" #include "turbopfor.h" @@ -33,13 +34,6 @@ using namespace std; using namespace std::chrono; -#define dprintf(...) \ - do { \ - if (use_debug) { \ - fprintf(stderr, __VA_ARGS__); \ - } \ - } while (false) - #define DEFAULT_DBPATH "/var/lib/mlocate/plocate.db" const char *dbpath = DEFAULT_DBPATH; @@ -668,6 +662,10 @@ int main(int argc, char **argv) case 'l': case 'n': limit_matches = atoll(optarg); + if (limit_matches <= 0) { + fprintf(stderr, "Error: limit must be a strictly positive number.\n"); + exit(1); + } break; case '0': print_nul = true; @@ -705,7 +703,6 @@ int main(int argc, char **argv) Needle needle; needle.str = argv[i]; - // See if there are any wildcard characters, which indicates we should treat it // as an (anchored) glob. bool any_wildcard = false;