diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2014-04-25 04:33:08 +0900 |
|---|---|---|
| committer | Yukihiro "Matz" Matsumoto <[email protected]> | 2014-04-25 04:33:08 +0900 |
| commit | 48f36d3f0ef9e1672a7eca95f289156095fc9f26 (patch) | |
| tree | e26091b4a35d41bc2cd7780dcbb96a7cfa916a55 /src/load.c | |
| parent | 83c1399af0d750e7a629dbf0ed6b7d0f59cf79ec (diff) | |
| download | mruby-48f36d3f0ef9e1672a7eca95f289156095fc9f26.tar.gz mruby-48f36d3f0ef9e1672a7eca95f289156095fc9f26.zip | |
better integer size assertion suggested by usak
Diffstat (limited to 'src/load.c')
| -rw-r--r-- | src/load.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/load.c b/src/load.c index 776fec561..5e7245714 100644 --- a/src/load.c +++ b/src/load.c @@ -156,7 +156,7 @@ read_irep_record_1(mrb_state *mrb, const uint8_t *bin, size_t *len, mrb_bool all irep->reps = (mrb_irep**)mrb_malloc(mrb, sizeof(mrb_irep*)*irep->rlen); diff = src - bin; - mrb_assert(diff >= 0 && (size_t)diff <= SIZE_MAX); + mrb_assert_int_fit(ptrdiff_t, diff, size_t, SIZE_MAX); *len = (size_t)diff; return irep; @@ -333,7 +333,7 @@ read_debug_record(mrb_state *mrb, const uint8_t *start, mrb_irep* irep, size_t * } diff = bin - start; - mrb_assert(diff >= 0 && (size_t)diff <= SIZE_MAX); + mrb_assert_int_fit(ptrdiff_t, diff, size_t, SIZE_MAX); if (record_size != (size_t)diff) { return MRB_DUMP_GENERAL_FAILURE; @@ -349,7 +349,7 @@ read_debug_record(mrb_state *mrb, const uint8_t *start, mrb_irep* irep, size_t * } diff = bin - start; - mrb_assert(diff >=0 && (size_t)diff <= SIZE_MAX); + mrb_assert_int_fit(ptrdiff_t, diff, size_t, SIZE_MAX); *record_len = (size_t)diff; return MRB_DUMP_OK; @@ -391,7 +391,7 @@ read_section_debug(mrb_state *mrb, const uint8_t *start, mrb_irep *irep, mrb_boo bin += len; diff = bin - start; - mrb_assert(diff >= 0 && (size_t)diff <= UINT32_MAX); + mrb_assert_int_fit(ptrdiff_t, diff, size_t, SIZE_MAX); if ((uint32_t)diff != bin_to_uint32(header->section_size)) { result = MRB_DUMP_GENERAL_FAILURE; } |
