projects
/
gcc.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
4729d77
)
re PR go/65349 (go tool crashes, can't compile go code on 32bit linux systems)
author
Ian Lance Taylor
<ian@gcc.gnu.org>
Mon, 9 Mar 2015 23:43:16 +0000
(23:43 +0000)
committer
Ian Lance Taylor
<ian@gcc.gnu.org>
Mon, 9 Mar 2015 23:43:16 +0000
(23:43 +0000)
PR go/65349
runtime: Don't crash if explicitly freeing small map.
From-SVN: r221292
libgo/runtime/go-map-index.c
patch
|
blob
|
history
diff --git
a/libgo/runtime/go-map-index.c
b/libgo/runtime/go-map-index.c
index 499641c5e14ccec39571e543bf87aea505e2ce00..616b00c68c82e876047cffa1a2c855cdd51fa5c5 100644
(file)
--- a/
libgo/runtime/go-map-index.c
+++ b/
libgo/runtime/go-map-index.c
@@
-8,6
+8,7
@@
#include <stdlib.h>
#include "runtime.h"
+#include "malloc.h"
#include "go-alloc.h"
#include "go-assert.h"
#include "map.h"
@@
-63,7
+64,8
@@
__go_map_rehash (struct __go_map *map)
}
}
- __go_free (old_buckets);
+ if (old_bucket_count * sizeof (void *) >= TinySize)
+ __go_free (old_buckets);
map->__bucket_count = new_bucket_count;
map->__buckets = new_buckets;