diff options
author | Elliott Hughes <enh@google.com> | 2012-12-17 09:26:50 -0800 |
---|---|---|
committer | Elliott Hughes <enh@google.com> | 2012-12-17 09:26:50 -0800 |
commit | c86f22c131ef72bd3350720d2029766c4f0721f3 (patch) | |
tree | 9795eb33d585e3096242ae09d6735668b488a3de /minzip/SysUtil.c | |
parent | 27f31606390eeed50d27f2c243dfbfe79e8b5ae2 (diff) | |
download | bootable_recovery-c86f22c131ef72bd3350720d2029766c4f0721f3.zip bootable_recovery-c86f22c131ef72bd3350720d2029766c4f0721f3.tar.gz bootable_recovery-c86f22c131ef72bd3350720d2029766c4f0721f3.tar.bz2 |
Pass the correct pointer to munmap on failure.
This won't ever happen, and you're probably screwed anyway if it
does, but that's no excuse...
Change-Id: I2c56f607e351e84308a72b41b834d13aaa98fc62
Diffstat (limited to 'minzip/SysUtil.c')
-rw-r--r-- | minzip/SysUtil.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/minzip/SysUtil.c b/minzip/SysUtil.c index 49a2522..31c76d6 100644 --- a/minzip/SysUtil.c +++ b/minzip/SysUtil.c @@ -95,16 +95,16 @@ int sysLoadFileInShmem(int fd, MemMapping* pMap) if (memPtr == NULL) return -1; - actual = read(fd, memPtr, length); + pMap->baseAddr = pMap->addr = memPtr; + pMap->baseLength = pMap->length = length; + + actual = TEMP_FAILURE_RETRY(read(fd, memPtr, length)); if (actual != length) { LOGE("only read %d of %d bytes\n", (int) actual, (int) length); sysReleaseShmem(pMap); return -1; } - pMap->baseAddr = pMap->addr = memPtr; - pMap->baseLength = pMap->length = length; - return 0; } |