diff options
author | Andrew Pinski <pinskia@gcc.gnu.org> | 2005-01-20 18:38:23 -0800 |
---|---|---|
committer | Tom Tromey <tromey@gcc.gnu.org> | 2005-01-21 02:38:23 +0000 |
commit | 155d49d7d7ecbc06cb5d4ee86e243a291ae9e6cc (patch) | |
tree | bdb6fe3d95bb4b4678bc9a53a93fdf303c1d5aa5 /gcc/java/jcf-write.c | |
parent | 4ef69b8352c4307faf514fb8a8cdaf902e69accc (diff) | |
download | gcc-155d49d7d7ecbc06cb5d4ee86e243a291ae9e6cc.zip gcc-155d49d7d7ecbc06cb5d4ee86e243a291ae9e6cc.tar.gz gcc-155d49d7d7ecbc06cb5d4ee86e243a291ae9e6cc.tar.bz2 |
re PR java/18091 (Valgrind errors building libjava)
2005-01-20 Andrew Pinski <pinskia@gcc.gnu.org>
PR java/18091:
* jcf-write.c (perform_relocations): Don't call memcpy if source
and destination are the same.
From-SVN: r94007
Diffstat (limited to 'gcc/java/jcf-write.c')
-rw-r--r-- | gcc/java/jcf-write.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/gcc/java/jcf-write.c b/gcc/java/jcf-write.c index 638f47b..8b6dc7d 100644 --- a/gcc/java/jcf-write.c +++ b/gcc/java/jcf-write.c @@ -1,5 +1,5 @@ /* Write out a Java(TM) class file. - Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004 + Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. This file is part of GCC. @@ -2794,7 +2794,9 @@ perform_relocations (struct jcf_partial *state) int n = (old_ptr - old_buffer) - start; new_ptr -= n; old_ptr -= n; - if (n > 0) + /* Don't "copy" bytes in place, this causes valgrind + warnings. */ + if (n > 0 && new_ptr != old_ptr) memcpy (new_ptr, old_ptr, n); if (old_ptr == old_buffer) break; |