summaryrefslogtreecommitdiff
path: root/odk
diff options
context:
space:
mode:
Diffstat (limited to 'odk')
-rw-r--r--odk/source/unoapploader/win/unoapploader.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/odk/source/unoapploader/win/unoapploader.c b/odk/source/unoapploader/win/unoapploader.c
index 830a38df6079..ab953990a07a 100644
--- a/odk/source/unoapploader/win/unoapploader.c
+++ b/odk/source/unoapploader/win/unoapploader.c
@@ -135,6 +135,7 @@ int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
NULL, cmd, NULL, NULL, TRUE, 0, NULL, NULL, &startinfo, &procinfo);
if (ret != 0) {
char * buf = NULL;
+ char * tmp;
size_t n = 1000;
size_t k = 0;
DWORD exitcode;
@@ -143,13 +144,15 @@ int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
CloseHandle(procinfo.hThread);
for (;;) {
DWORD m;
- buf = realloc(buf, n);
- if (buf == NULL) {
+ tmp = realloc(buf, n);
+ if (tmp == NULL) {
+ free(buf);
writeError(
"Error: out of memory reading unoinfo output!\n");
closeErrorFile();
return 1;
}
+ buf = tmp;
if (!ReadFile(stdoutRead, buf + k, n - k, &m, NULL))
{
DWORD err = GetLastError();