diff options
author | David 'Digit' Turner <digit@android.com> | 2011-03-15 23:08:50 +0100 |
---|---|---|
committer | David 'Digit' Turner <digit@android.com> | 2011-03-15 23:08:50 +0100 |
commit | e8ab08c1ee27349cb81cd5e8849a01a85da16775 (patch) | |
tree | 820c86645d685717e989648dac8cbbb41a05976c /hw | |
parent | 356e18be0ec6c7d92d116f75130e2cb8db4b114a (diff) | |
download | external_qemu-e8ab08c1ee27349cb81cd5e8849a01a85da16775.zip external_qemu-e8ab08c1ee27349cb81cd5e8849a01a85da16775.tar.gz external_qemu-e8ab08c1ee27349cb81cd5e8849a01a85da16775.tar.bz2 |
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
Diffstat (limited to 'hw')
-rw-r--r-- | hw/goldfish_nand.c | 5 |
1 files changed, 3 insertions, 2 deletions
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); } |