summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--refs.c3
-rw-r--r--t/valgrind/default.supp15
2 files changed, 13 insertions, 5 deletions
diff --git a/refs.c b/refs.c
index 20e2bf18c9..82e4842a36 100644
--- a/refs.c
+++ b/refs.c
@@ -153,6 +153,7 @@ int check_refname_format(const char *refname, int flags)
const __m128i tilde_lb = _mm_set1_epi8('~' - 1);
int component_count = 0;
+ int orig_flags = flags;
if (refname[0] == 0 || refname[0] == '/') {
/* entirely empty ref or initial ref component */
@@ -178,7 +179,7 @@ int check_refname_format(const char *refname, int flags)
* End-of-page; fall back to slow method for
* this entire ref.
*/
- return check_refname_format_bytewise(refname, flags);
+ return check_refname_format_bytewise(refname, orig_flags);
tmp = _mm_loadu_si128((__m128i *)cp);
tmp1 = _mm_loadu_si128((__m128i *)(cp + 1));
diff --git a/t/valgrind/default.supp b/t/valgrind/default.supp
index 332ab1a3b3..9d51c92b74 100644
--- a/t/valgrind/default.supp
+++ b/t/valgrind/default.supp
@@ -50,10 +50,17 @@
fun:copy_ref
}
{
- ignore-sse-check_refname_format
+ ignore-sse-check_refname_format-addr
Memcheck:Addr8
fun:check_refname_format
- fun:cmd_check_ref_format
- fun:handle_builtin
- fun:main
+}
+{
+ ignore-sse-check_refname_format-cond
+ Memcheck:Cond
+ fun:check_refname_format
+}
+{
+ ignore-sse-check_refname_format-value
+ Memcheck:Value8
+ fun:check_refname_format
}