From 48f36d3f0ef9e1672a7eca95f289156095fc9f26 Mon Sep 17 00:00:00 2001 From: "Yukihiro \"Matz\" Matsumoto" Date: Fri, 25 Apr 2014 04:33:08 +0900 Subject: better integer size assertion suggested by usak --- src/load.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'src/load.c') 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; } -- cgit v1.2.3