summaryrefslogtreecommitdiff
path: root/methods/rred.cc
diff options
context:
space:
mode:
authorMichael Vogt <michael.vogt@ubuntu.com>2012-01-20 10:27:03 +0100
committerMichael Vogt <michael.vogt@ubuntu.com>2012-01-20 10:27:03 +0100
commit2c384bb626cbaa682c20b94beb14589611847191 (patch)
tree5a0afc2503e334bebdc13ce80ab832d88e289281 /methods/rred.cc
parenta7025171ea8bb49975f98dd4c3c6c7d89335cd30 (diff)
parent809cf6d22a9bb72061aedf2670c78b57d9da6999 (diff)
merged from bzr+ssh://bazaar.launchpad.net/~donkult/apt/experimental/
Diffstat (limited to 'methods/rred.cc')
-rw-r--r--methods/rred.cc7
1 files changed, 6 insertions, 1 deletions
diff --git a/methods/rred.cc b/methods/rred.cc
index e37a12ed9..1e352d0e7 100644
--- a/methods/rred.cc
+++ b/methods/rred.cc
@@ -333,7 +333,12 @@ RredMethod::State RredMethod::patchMMap(FileFd &Patch, FileFd &From, /*{{{*/
}
if(command_count == command_alloc) {
command_alloc = (command_alloc + 64) * 3 / 2;
- commands = (EdCommand*) realloc(commands, command_alloc * sizeof(EdCommand));
+ EdCommand* newCommands = (EdCommand*) realloc(commands, command_alloc * sizeof(EdCommand));
+ if (newCommands == NULL) {
+ free(commands);
+ return MMAP_FAILED;
+ }
+ commands = newCommands;
}
commands[command_count++] = cmd;
}