diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2014-01-08 00:40:45 +0900 |
|---|---|---|
| committer | Yukihiro "Matz" Matsumoto <[email protected]> | 2014-01-08 00:40:45 +0900 |
| commit | a1131361d54193b982193b15016426ff1faac92d (patch) | |
| tree | 3b9dcea582324a86f81a2dc074fa97d25cda0b9f | |
| parent | 78ab979ef9f86cfcc91bf08db31eab716ee19933 (diff) | |
| download | mruby-a1131361d54193b982193b15016426ff1faac92d.tar.gz mruby-a1131361d54193b982193b15016426ff1faac92d.zip | |
dump.c: wrong filename table dump for multiple script files; close #1648
| -rw-r--r-- | src/dump.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/dump.c b/src/dump.c index f1fc56d8e..204e441d1 100644 --- a/src/dump.c +++ b/src/dump.c @@ -595,6 +595,9 @@ write_filename_table(mrb_state *mrb, mrb_irep *irep, uint8_t **cp, mrb_sym **fp, size += sizeof(uint16_t) + fn_len; } + for (file_i=0; file_i<irep->rlen; file_i++) { + size += write_filename_table(mrb, irep->reps[file_i], &cur, fp, lp); + } *cp = cur; return size; } @@ -606,7 +609,7 @@ write_section_debug(mrb_state *mrb, mrb_irep *irep, uint8_t *cur) const uint8_t *bin = cur; struct rite_section_debug_header *header; mrb_sym *filenames; - size_t filenames_len = 0, i; + size_t filenames_len = 0; uint8_t *filenames_len_out; uint32_t dlen; @@ -624,9 +627,6 @@ write_section_debug(mrb_state *mrb, mrb_irep *irep, uint8_t *cur) cur += sizeof(uint16_t); section_size += sizeof(uint16_t); section_size += write_filename_table(mrb, irep, &cur, &filenames, &filenames_len); - for (i=0; i<irep->rlen; i++) { - section_size += write_filename_table(mrb, irep->reps[i], &cur, &filenames, &filenames_len); - } uint16_to_bin(filenames_len, filenames_len_out); // debug records |
