summaryrefslogtreecommitdiff
path: root/dev-util/valgrind/files/valgrind-3.21.0-memcpy-fortify_source.patch
diff options
context:
space:
mode:
Diffstat (limited to 'dev-util/valgrind/files/valgrind-3.21.0-memcpy-fortify_source.patch')
-rw-r--r--dev-util/valgrind/files/valgrind-3.21.0-memcpy-fortify_source.patch26
1 files changed, 26 insertions, 0 deletions
diff --git a/dev-util/valgrind/files/valgrind-3.21.0-memcpy-fortify_source.patch b/dev-util/valgrind/files/valgrind-3.21.0-memcpy-fortify_source.patch
new file mode 100644
index 000000000000..87acc9ff9f55
--- /dev/null
+++ b/dev-util/valgrind/files/valgrind-3.21.0-memcpy-fortify_source.patch
@@ -0,0 +1,26 @@
+Avoid false positives w/ overlapping memcpy args with _FORTIFY_SOURCE's
+memcpy_chk.
+
+https://src.fedoraproject.org/rpms/valgrind/raw/rawhide/f/valgrind-3.21.0-no-memcpy-replace-check.patch
+https://bugs.kde.org/show_bug.cgi?id=402833
+https://bugs.kde.org/show_bug.cgi?id=453084
+--- a/shared/vg_replace_strmem.c
++++ b/shared/vg_replace_strmem.c
+@@ -1128,7 +1128,7 @@ static inline void my_exit ( int x )
+ MEMMOVE_OR_MEMCPY(20181, soname, fnname, 0)
+
+ #define MEMCPY(soname, fnname) \
+- MEMMOVE_OR_MEMCPY(20180, soname, fnname, 1)
++ MEMMOVE_OR_MEMCPY(20180, soname, fnname, 0) /* See KDE bug #402833 */
+
+ #if defined(VGO_linux)
+ /* For older memcpy we have to use memmove-like semantics and skip
+@@ -1714,8 +1714,6 @@ static inline void my_exit ( int x )
+ RECORD_COPY(len); \
+ if (len == 0) \
+ return dst; \
+- if (is_overlap(dst, src, len, len)) \
+- RECORD_OVERLAP_ERROR("memcpy_chk", dst, src, len); \
+ if ( dst > src ) { \
+ d = (HChar *)dst + len - 1; \
+ s = (const HChar *)src + len - 1; \