From: Andreas Fritiofson Date: Wed, 10 Jul 2013 17:22:42 +0000 (+0200) Subject: mpsse: Add missing read buffer checks X-Git-Tag: v0.8.0-rc1~332 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=209e0beed384a5401158cd0c06add3590e0109dc;p=openocd mpsse: Add missing read buffer checks These two unused functions added reads without checking for available space. Change-Id: I17dbbe9988b057e5a3a1768f405fc9d1027d1c01 Signed-off-by: Andreas Fritiofson Reviewed-on: http://openocd.zylin.com/1500 Tested-by: jenkins Reviewed-by: Spencer Oliver --- diff --git a/src/jtag/drivers/mpsse.c b/src/jtag/drivers/mpsse.c index 59927a0f..c5fd6d7f 100644 --- a/src/jtag/drivers/mpsse.c +++ b/src/jtag/drivers/mpsse.c @@ -602,7 +602,7 @@ void mpsse_read_data_bits_low_byte(struct mpsse_ctx *ctx, uint8_t *data) return; } - if (buffer_write_space(ctx) < 1) + if (buffer_write_space(ctx) < 1 || buffer_read_space(ctx) < 1) ctx->retval = mpsse_flush(ctx); buffer_write_byte(ctx, 0x81); @@ -618,7 +618,7 @@ void mpsse_read_data_bits_high_byte(struct mpsse_ctx *ctx, uint8_t *data) return; } - if (buffer_write_space(ctx) < 1) + if (buffer_write_space(ctx) < 1 || buffer_read_space(ctx) < 1) ctx->retval = mpsse_flush(ctx); buffer_write_byte(ctx, 0x83);