From a7d077cb193bdc60d1ce75940476c416f33d46ad Mon Sep 17 00:00:00 2001 From: Elyes HAOUAS Date: Thu, 18 Jul 2019 14:00:13 +0200 Subject: [PATCH] pickit2_spi: Fix "dead" assignment We never read the first 'ret'. Let's check the first 'ret' and exit if it failed. Also, print the version only when the command succeeded. Backported to libusb-v0 version (checking for CMD_LENGTH instead of 0 return value). Found-by: scan-build 7.0.1-8 Change-Id: I4aac5e1f3bd0604b079e1fdd9b7f09f1f4fc2d7f Signed-off-by: Elyes HAOUAS Reviewed-on: https://review.coreboot.org/c/flashrom/+/34403 Reviewed-on: https://review.coreboot.org/c/flashrom/+/67838 Tested-by: build bot (Jenkins) Reviewed-by: Felix Singer Reviewed-by: Edward O'Callaghan Reviewed-by: Angel Pons --- pickit2_spi.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/pickit2_spi.c b/pickit2_spi.c index 102fe3767..bae0aa1e3 100644 --- a/pickit2_spi.c +++ b/pickit2_spi.c @@ -123,14 +123,20 @@ static int pickit2_get_firmware_version(void) uint8_t command[CMD_LENGTH] = {CMD_GET_VERSION, CMD_END_OF_BUFFER}; ret = usb_interrupt_write(pickit2_handle, ENDPOINT_OUT, (char *)command, CMD_LENGTH, DFLT_TIMEOUT); + + if (ret != CMD_LENGTH) { + msg_perr("Command Get Firmware Version failed!\n"); + return 1; + } + ret = usb_interrupt_read(pickit2_handle, ENDPOINT_IN, (char *)command, CMD_LENGTH, DFLT_TIMEOUT); - msg_pdbg("PICkit2 Firmware Version: %d.%d\n", (int)command[0], (int)command[1]); if (ret != CMD_LENGTH) { msg_perr("Command Get Firmware Version failed (%s)!\n", usb_strerror()); return 1; } + msg_pdbg("PICkit2 Firmware Version: %d.%d\n", (int)command[0], (int)command[1]); return 0; }