From e8ab08c1ee27349cb81cd5e8849a01a85da16775 Mon Sep 17 00:00:00 2001 From: David 'Digit' Turner Date: Tue, 15 Mar 2011 23:08:50 +0100 Subject: Fix a crash that happened when the content directory didn't have a cache.img file. This only happened for fresh newly-created AVDs. Existing ones used for testing the emulator already had a cache.img and booted properly. Change-Id: I87901ea5fb1dc6aa7d2bb3dd191de58d972c386f --- hw/goldfish_nand.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'hw/goldfish_nand.c') diff --git a/hw/goldfish_nand.c b/hw/goldfish_nand.c index 8d9b5db..eb0c355 100644 --- a/hw/goldfish_nand.c +++ b/hw/goldfish_nand.c @@ -688,10 +688,11 @@ void nand_add_dev(const char *arg) if(value != NULL) goto bad_arg_and_value; devname_len = arg_len; - devname = malloc(arg_len); + devname = malloc(arg_len+1); if(devname == NULL) goto out_of_memory; memcpy(devname, arg, arg_len); + devname[arg_len] = 0; } else if(value == NULL) { if(arg_match("readonly", arg, arg_len)) { @@ -765,7 +766,7 @@ void nand_add_dev(const char *arg) if(rwfilename) { rwfd = open(rwfilename, O_BINARY | (read_only ? O_RDONLY : O_RDWR)); - if(rwfd < 0 && read_only) { + if(rwfd < 0) { XLOG("could not open file %s, %s\n", rwfilename, strerror(errno)); exit(1); } -- cgit v1.1