summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMyles Watson <mylesgw@gmail.com>2009-04-23 18:46:32 +0000
committerMyles Watson <mylesgw@gmail.com>2009-04-23 18:46:32 +0000
commit06db2c44825d5a69bf1139c1348ca95296ccf453 (patch)
treef3e934360a7b47d5631b1c8e743a488196acff38
parent436b9de0a31095e4da0dbcba8e4004a480ed215b (diff)
downloadcoreboot-06db2c44825d5a69bf1139c1348ca95296ccf453.tar.xz
Fix an uninitialized variable. If it didn't end up being zero it sometimes
caused a seg fault, sometimes executed somewhere else. Also add an error if the algorithm is unknown. Signed-off-by: Myles Watson <mylesgw@gmail.com> Acked-by: Ward Vandewege <ward@gnu.org> git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4198 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
-rw-r--r--util/cbfstool/tools/cbfs-mkpayload.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/util/cbfstool/tools/cbfs-mkpayload.c b/util/cbfstool/tools/cbfs-mkpayload.c
index 9b3946a926..7db48cfa8b 100644
--- a/util/cbfstool/tools/cbfs-mkpayload.c
+++ b/util/cbfstool/tools/cbfs-mkpayload.c
@@ -191,7 +191,7 @@ err:
int main(int argc, char **argv)
{
void (*compress) (char *, int, char *, int *);
- int algo;
+ int algo = CBFS_COMPRESS_NONE;
char *output = NULL;
char *input = NULL;
@@ -251,6 +251,9 @@ int main(int argc, char **argv)
case CBFS_COMPRESS_LZMA:
compress = lzma_compress;
break;
+ default:
+ fprintf(stderr, "E: Unknown compression algorithm %d!\n", algo);
+ return -1;
}
osize = parse_elf(buffer, &obuffer, algo, compress);