diff --git a/libjava/ChangeLog b/libjava/ChangeLog index f4c80560c52..fc8b4a67c5d 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,9 @@ +1999-11-05 Jeff Sturm + + * boehm.cc (_Jv_GCSetInitialHeapSize): Swapped size & current. + * prims.cc (parse_heap_size): Use end, not spec. Use 1024 + multipler for `k'. + 1999-11-05 Tom Tromey * java/lang/natThread.cc (stop): Removed argument name. diff --git a/libjava/boehm.cc b/libjava/boehm.cc index 33800edb410..2ecad740d93 100644 --- a/libjava/boehm.cc +++ b/libjava/boehm.cc @@ -375,7 +375,7 @@ _Jv_GCSetInitialHeapSize (size_t size) { size_t current = GC_get_heap_size (); if (size > current) - GC_expand_hp (current - size); + GC_expand_hp (size - current); } void diff --git a/libjava/prims.cc b/libjava/prims.cc index 6e6c6339923..6b37d55eb90 100644 --- a/libjava/prims.cc +++ b/libjava/prims.cc @@ -822,10 +822,10 @@ parse_heap_size (const char *spec) { char *end; unsigned long val = strtoul (spec, &end, 10); - if (*spec == 'k' || *spec == 'K') - val *= 1000; - else if (*spec == 'm' || *spec == 'M') - val *= 1000000; + if (*end == 'k' || *end == 'K') + val *= 1024; + else if (*end == 'm' || *end == 'M') + val *= 1048576; return (size_t) val; }