From 6545ef83c162894776c23e0a9811d6cadc1bff66 Mon Sep 17 00:00:00 2001 From: Thomas Koenig Date: Sun, 28 May 2006 20:25:15 +0000 Subject: string_intrinsics.c (compare_string): Use memcmp instead of strncmp to avoid tripping over CHAR(0) in a string. 2006-05-28 Thomas Koenig * intrinsics/string_intrinsics.c (compare_string): Use memcmp instead of strncmp to avoid tripping over CHAR(0) in a string. 2006-05-28 Thomas Koenig * gfortran.dg/string_null_compare_1.f: New test case. From-SVN: r114175 --- libgfortran/ChangeLog | 6 ++++++ libgfortran/intrinsics/string_intrinsics.c | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) (limited to 'libgfortran') diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog index 4a31e48..50ebaf2 100644 --- a/libgfortran/ChangeLog +++ b/libgfortran/ChangeLog @@ -1,3 +1,9 @@ +2006-05-28 Thomas Koenig + + * intrinsics/string_intrinsics.c (compare_string): + Use memcmp instead of strncmp to avoid tripping over + CHAR(0) in a string. + 2006-05-27 Janne Blomqvist * io/io.h (find_or_create_unit): Correct export declaration. diff --git a/libgfortran/intrinsics/string_intrinsics.c b/libgfortran/intrinsics/string_intrinsics.c index eed41d7..1bc4ff2 100644 --- a/libgfortran/intrinsics/string_intrinsics.c +++ b/libgfortran/intrinsics/string_intrinsics.c @@ -109,7 +109,7 @@ compare_string (GFC_INTEGER_4 len1, const char * s1, const char *s; int len; - res = strncmp (s1, s2, (len1 < len2) ? len1 : len2); + res = memcmp (s1, s2, (len1 < len2) ? len1 : len2); if (res != 0) return res; -- cgit v1.1