From 18fd9576da385f54c54d2e286829a46d92828fd8 Mon Sep 17 00:00:00 2001 From: Zhengyu Gu Date: Fri, 5 Jun 2026 18:35:05 +0000 Subject: [PATCH] Shifting long long value more than 63 bits is UB --- ddprof-lib/src/main/cpp/arguments.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ddprof-lib/src/main/cpp/arguments.cpp b/ddprof-lib/src/main/cpp/arguments.cpp index 52b55d78b..925569e1c 100644 --- a/ddprof-lib/src/main/cpp/arguments.cpp +++ b/ddprof-lib/src/main/cpp/arguments.cpp @@ -440,7 +440,7 @@ const char *Arguments::file() { // Should match statically computed HASH(arg) long long Arguments::hash(const char *arg) { long long h = 0; - for (int shift = 0; *arg != 0; shift += 5) { + for (int shift = 0; *arg != 0 && shift < 60; shift += 5) { h |= (*arg++ & 31LL) << shift; } return h;