diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2019-05-27 14:45:10 +0900 |
|---|---|---|
| committer | GitHub <[email protected]> | 2019-05-27 14:45:10 +0900 |
| commit | 8ad777c702b9491e72c37b63ebe7be4ad019ee56 (patch) | |
| tree | 2bb9e578340c4d71225a0e14a3e58d3f5549d6c8 | |
| parent | 459c439243ade554ba18a7f9f0c47544d67a8c73 (diff) | |
| parent | d1e1bb0d5b45d9f1c5de943a036c86542698af49 (diff) | |
| download | mruby-8ad777c702b9491e72c37b63ebe7be4ad019ee56.tar.gz mruby-8ad777c702b9491e72c37b63ebe7be4ad019ee56.zip | |
Merge pull request #4470 from dearblue/remove-mrb_alloca
Remove `mrb_alloca()` function
| -rw-r--r-- | include/mruby.h | 2 | ||||
| -rw-r--r-- | src/state.c | 33 |
2 files changed, 0 insertions, 35 deletions
diff --git a/include/mruby.h b/include/mruby.h index 20cdc1b83..5d5c759dd 100644 --- a/include/mruby.h +++ b/include/mruby.h @@ -228,7 +228,6 @@ typedef struct mrb_state { struct RClass *symbol_class; struct RClass *kernel_module; - struct alloca_header *mems; mrb_gc gc; #ifdef MRB_METHOD_CACHE @@ -1247,7 +1246,6 @@ MRB_API void mrb_pool_close(struct mrb_pool*); MRB_API void* mrb_pool_alloc(struct mrb_pool*, size_t); MRB_API void* mrb_pool_realloc(struct mrb_pool*, void*, size_t oldlen, size_t newlen); MRB_API mrb_bool mrb_pool_can_realloc(struct mrb_pool*, void*, size_t); -MRB_API void* mrb_alloca(mrb_state *mrb, size_t); MRB_API void mrb_state_atexit(mrb_state *mrb, mrb_atexit_func func); diff --git a/src/state.c b/src/state.c index 08d7ba906..c42df71ba 100644 --- a/src/state.c +++ b/src/state.c @@ -57,38 +57,6 @@ mrb_default_allocf(mrb_state *mrb, void *p, size_t size, void *ud) } } -struct alloca_header { - struct alloca_header *next; - char buf[1]; -}; - -MRB_API void* -mrb_alloca(mrb_state *mrb, size_t size) -{ - struct alloca_header *p; - - p = (struct alloca_header*) mrb_malloc(mrb, sizeof(struct alloca_header)+size); - p->next = mrb->mems; - mrb->mems = p; - return (void*)p->buf; -} - -static void -mrb_alloca_free(mrb_state *mrb) -{ - struct alloca_header *p; - struct alloca_header *tmp; - - if (mrb == NULL) return; - p = mrb->mems; - - while (p) { - tmp = p; - p = p->next; - mrb_free(mrb, tmp); - } -} - MRB_API mrb_state* mrb_open(void) { @@ -256,7 +224,6 @@ mrb_close(mrb_state *mrb) mrb_gc_free_gv(mrb); mrb_free_context(mrb, mrb->root_c); mrb_free_symtbl(mrb); - mrb_alloca_free(mrb); mrb_gc_destroy(mrb, &mrb->gc); mrb_free(mrb, mrb); } |
