Commit 5fb12a99 authored by Yukihiro "Matz" Matsumoto's avatar Yukihiro "Matz" Matsumoto

Merge pull request #1100 from masuidrive/fixed_debug_args

Fixed wrong section size calculation
parents 8326b0ab 1e58b9c2
...@@ -234,9 +234,12 @@ read_rite_lineno_record(mrb_state *mrb, const uint8_t *bin, size_t irepno, uint3 ...@@ -234,9 +234,12 @@ read_rite_lineno_record(mrb_state *mrb, const uint8_t *bin, size_t irepno, uint3
short *lines; short *lines;
ret = MRB_DUMP_OK; ret = MRB_DUMP_OK;
*len = 0;
bin += sizeof(uint32_t); // record size bin += sizeof(uint32_t); // record size
*len += sizeof(uint32_t);
fname_len = bin_to_uint16(bin); fname_len = bin_to_uint16(bin);
bin += sizeof(uint16_t); bin += sizeof(uint16_t);
*len += sizeof(uint16_t);
fname = (char *)mrb_malloc(mrb, fname_len + 1); fname = (char *)mrb_malloc(mrb, fname_len + 1);
if (fname == NULL) { if (fname == NULL) {
ret = MRB_DUMP_GENERAL_FAILURE; ret = MRB_DUMP_GENERAL_FAILURE;
...@@ -245,14 +248,17 @@ read_rite_lineno_record(mrb_state *mrb, const uint8_t *bin, size_t irepno, uint3 ...@@ -245,14 +248,17 @@ read_rite_lineno_record(mrb_state *mrb, const uint8_t *bin, size_t irepno, uint3
memcpy(fname, bin, fname_len); memcpy(fname, bin, fname_len);
fname[fname_len] = '\0'; fname[fname_len] = '\0';
bin += fname_len; bin += fname_len;
*len += fname_len;
niseq = bin_to_uint32(bin); niseq = bin_to_uint32(bin);
bin += sizeof(uint32_t); // niseq bin += sizeof(uint32_t); // niseq
*len += sizeof(uint32_t);
lines = (short *)mrb_malloc(mrb, niseq * sizeof(short)); lines = (short *)mrb_malloc(mrb, niseq * sizeof(short));
for (i = 0; i < niseq; i++) { for (i = 0; i < niseq; i++) {
lines[i] = bin_to_uint16(bin); lines[i] = bin_to_uint16(bin);
bin += sizeof(short); // niseq bin += sizeof(uint16_t); // niseq
*len += sizeof(uint16_t);
} }
mrb->irep[irepno]->filename = fname; mrb->irep[irepno]->filename = fname;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment