aboutsummaryrefslogtreecommitdiff
path: root/engines/sword25/package/packagemanager.h
diff options
context:
space:
mode:
authorJulien2011-06-04 06:05:01 +0800
committerJulien2011-06-23 15:15:57 +0800
commite972c6cfd87cb5cbf1e93cf481f53add88655c42 (patch)
tree809b15141a2b8c239b8e93419e7244bfd80f2233 /engines/sword25/package/packagemanager.h
parent53c4a190fc2337b6f2bec943ca9016f89d8e6f2f (diff)
downloadscummvm-rg350-e972c6cfd87cb5cbf1e93cf481f53add88655c42.tar.gz
scummvm-rg350-e972c6cfd87cb5cbf1e93cf481f53add88655c42.tar.bz2
scummvm-rg350-e972c6cfd87cb5cbf1e93cf481f53add88655c42.zip
SWORD25: Add error checks after allocating memory with malloc
Diffstat (limited to 'engines/sword25/package/packagemanager.h')
-rw-r--r--engines/sword25/package/packagemanager.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/engines/sword25/package/packagemanager.h b/engines/sword25/package/packagemanager.h
index c57c30636d..b0c6718008 100644
--- a/engines/sword25/package/packagemanager.h
+++ b/engines/sword25/package/packagemanager.h
@@ -141,6 +141,9 @@ public:
uint fileSize;
char *data = (char *)getFile(fileName, &fileSize);
char *result = (char *)malloc(fileSize + strlen(versionStr) + 1);
+ if (!result)
+ error("[PackageManager::getXmlFile] Cannot allocate memory");
+
strcpy(result, versionStr);
Common::copy(data, data + fileSize, result + strlen(versionStr));
result[fileSize + strlen(versionStr)] = '\0';