From f1d21449486a25d678e181230d64879592f2a6eb Mon Sep 17 00:00:00 2001 From: rfm Date: Tue, 11 Aug 2009 16:40:40 +0000 Subject: [PATCH] fix bug 27224 git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28452 72102866-910b-0410-8b05-ffd578937521 --- ChangeLog | 5 +++++ Source/Additions/GSMime.m | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 5caef53ae..4f1b91fe6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2009-08-11 Richard Frith-Macdonald + + * Source/NSData.m: Fix memory leak introduced with GC changes. + * Source/Additions/GSMime.m: Use memmove() as fix for bug #27224 + 2009-08-10 Richard Frith-Macdonald * Source/NSData.m: Fix memory leak introduced with GC changes. diff --git a/Source/Additions/GSMime.m b/Source/Additions/GSMime.m index dafb54e29..60b945761 100644 --- a/Source/Additions/GSMime.m +++ b/Source/Additions/GSMime.m @@ -2679,7 +2679,7 @@ NSDebugMLLog(@"GSMime", @"Header parsed - %@", info); */ lineStart += bLength; sectionStart = lineStart; - memcpy(bytes, &bytes[sectionStart], dataEnd - sectionStart); + memmove(bytes, &bytes[sectionStart], dataEnd - sectionStart); dataEnd -= sectionStart; [data setLength: dataEnd]; bytes = (unsigned char*)[data mutableBytes]; @@ -2772,7 +2772,7 @@ NSDebugMLLog(@"GSMime", @"Header parsed - %@", info); lengthRemaining = dataEnd - input; if (lengthRemaining > 0) { - memcpy(bytes, &bytes[input], lengthRemaining); + memmove(bytes, &bytes[input], lengthRemaining); } dataEnd = lengthRemaining; [data setLength: lengthRemaining];