diff options
| author | tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-02-21 05:14:06 +0000 |
|---|---|---|
| committer | tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-02-21 05:14:06 +0000 |
| commit | 9a069e71d21fdcc5f0bb618c28257b9ff7d9cbe7 (patch) | |
| tree | 568b4e927eb060baf6fa8db41e1f5ecccafb61c0 | |
| parent | ce96ab9966388b027221e851b542062ec3f4088e (diff) | |
| download | ppe42-gcc-9a069e71d21fdcc5f0bb618c28257b9ff7d9cbe7.tar.gz ppe42-gcc-9a069e71d21fdcc5f0bb618c28257b9ff7d9cbe7.zip | |
* boehm.cc (_Jv_AllocBytes): Clear returned memory.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@32085 138bc75d-0d04-0410-961f-82ee72b054a4
| -rw-r--r-- | libjava/ChangeLog | 4 | ||||
| -rw-r--r-- | libjava/boehm.cc | 9 |
2 files changed, 12 insertions, 1 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog index 7ff9c1c26fc..c767dfb6df9 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,7 @@ +2000-02-20 Tom Tromey <tromey@cygnus.com> + + * boehm.cc (_Jv_AllocBytes): Clear returned memory. + 2000-02-19 Bryce McKinlay <bryce@albatross.co.nz> * java/util/zip/ZipEntry.java (setCrc): Fix overflow. diff --git a/libjava/boehm.cc b/libjava/boehm.cc index 2c50c5cc0f0..ccfe9ee16c4 100644 --- a/libjava/boehm.cc +++ b/libjava/boehm.cc @@ -321,7 +321,14 @@ _Jv_AllocArray (jsize size) void * _Jv_AllocBytes (jsize size) { - return GC_GENERIC_MALLOC (size, PTRFREE); + void *r = GC_GENERIC_MALLOC (size, PTRFREE); + // We have to explicitly zero memory here, as the GC doesn't + // guarantee that PTRFREE allocations are zeroed. Note that we + // don't have to do this for other allocation types because we set + // the `ok_init' flag in the type descriptor. + if (r != NULL) + memset (r, 0, size); + return r; } static void |

