aboutsummaryrefslogtreecommitdiffstats
path: root/tools/firmware-utils/src/bcm4908img.c
diff options
context:
space:
mode:
Diffstat (limited to 'tools/firmware-utils/src/bcm4908img.c')
-rw-r--r--tools/firmware-utils/src/bcm4908img.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/tools/firmware-utils/src/bcm4908img.c b/tools/firmware-utils/src/bcm4908img.c
index d97e54e0f6..402d317190 100644
--- a/tools/firmware-utils/src/bcm4908img.c
+++ b/tools/firmware-utils/src/bcm4908img.c
@@ -567,8 +567,8 @@ out:
static int bcm4908img_extract(int argc, char **argv) {
struct bcm4908img_info info;
const char *pathname = NULL;
+ const char *type = NULL;
uint8_t buf[1024];
- const char *type;
size_t offset;
size_t length;
size_t bytes;
@@ -600,7 +600,11 @@ static int bcm4908img_extract(int argc, char **argv) {
goto err_close;
}
- if (!strcmp(type, "cferom")) {
+ if (!type) {
+ err = -EINVAL;
+ fprintf(stderr, "No data to extract specified\n");
+ goto err_close;
+ } else if (!strcmp(type, "cferom")) {
offset = info.cferom_offset;
length = info.bootfs_offset - offset;
if (!length) {
@@ -625,7 +629,7 @@ static int bcm4908img_extract(int argc, char **argv) {
if (!length) {
err = -EINVAL;
- fprintf(stderr, "No data to extract specified\n");
+ fprintf(stderr, "Failed to find requested data in input image\n");
goto err_close;
}