*/
/*
- * Copyright (C) 2010-2012 Red Hat, Inc.
+ * Copyright (C) 2010-2013 Red Hat, Inc.
* Copyright (C) 2008-2009 Sun Microsystems, Inc.
*
* This file is part of a free software library; you can redistribute
#define VIR_FROM_THIS VIR_FROM_VBOX
-#define VBOX_UTF16_FREE(arg) data->pFuncs->pfnUtf16Free(arg)
-#define VBOX_UTF8_FREE(arg) data->pFuncs->pfnUtf8Free(arg)
-#define VBOX_COM_UNALLOC_MEM(arg) data->pFuncs->pfnComUnallocMem(arg)
+#define VBOX_UTF16_FREE(arg) \
+ do { \
+ if (arg) { \
+ data->pFuncs->pfnUtf16Free(arg); \
+ (arg) = NULL; \
+ } \
+ } while (0)
+
+#define VBOX_UTF8_FREE(arg) \
+ do { \
+ if (arg) { \
+ data->pFuncs->pfnUtf8Free(arg); \
+ (arg) = NULL; \
+ } \
+ } while (0)
+
+#define VBOX_COM_UNALLOC_MEM(arg) \
+ do { \
+ if (arg) { \
+ data->pFuncs->pfnComUnallocMem(arg); \
+ (arg) = NULL; \
+ } \
+ } while (0)
+
#define VBOX_UTF16_TO_UTF8(arg1, arg2) data->pFuncs->pfnUtf16ToUtf8(arg1, arg2)
#define VBOX_UTF8_TO_UTF16(arg1, arg2) data->pFuncs->pfnUtf8ToUtf16(arg1, arg2)
ret->id = i + 1;
}
- if (machineNameUtf8) {
- VBOX_UTF8_FREE(machineNameUtf8);
- machineNameUtf8 = NULL;
- }
- if (machineNameUtf16) {
- VBOX_COM_UNALLOC_MEM(machineNameUtf16);
- machineNameUtf16 = NULL;
- }
+ VBOX_UTF8_FREE(machineNameUtf8);
+ VBOX_COM_UNALLOC_MEM(machineNameUtf16);
if (matched == 1)
break;
}
ret = 0;
}
- if (machineName)
- VBOX_UTF8_FREE(machineName);
- if (machineNameUtf16)
- VBOX_COM_UNALLOC_MEM(machineNameUtf16);
+ VBOX_UTF8_FREE(machineName);
+ VBOX_COM_UNALLOC_MEM(machineNameUtf16);
if (info->nrVirtCpu)
break;
}
VBOX_UTF16_TO_UTF8(valueDisplayUtf16, &valueDisplayUtf8);
VBOX_UTF16_FREE(valueDisplayUtf16);
- if (strlen(valueDisplayUtf8) <= 0) {
+ if (strlen(valueDisplayUtf8) <= 0)
VBOX_UTF8_FREE(valueDisplayUtf8);
- valueDisplayUtf8 = NULL;
- }
}
if (STREQ(valueTypeUtf8, "sdl")) {
}
totalPresent++;
}
- if (valueDisplayUtf8)
- VBOX_UTF8_FREE(valueDisplayUtf8);
+ VBOX_UTF8_FREE(valueDisplayUtf8);
}
if (STREQ(valueTypeUtf8, "vrdp"))
VBOX_UTF16_TO_UTF8(valueDisplayUtf16, &valueDisplayUtf8);
VBOX_UTF16_FREE(valueDisplayUtf16);
- if (strlen(valueDisplayUtf8) <= 0) {
+ if (strlen(valueDisplayUtf8) <= 0)
VBOX_UTF8_FREE(valueDisplayUtf8);
- valueDisplayUtf8 = NULL;
- }
}
if (STREQ(valueTypeUtf8, "sdl")) {
} else {
guiPresent = 1;
}
- if (valueDisplayUtf8)
- VBOX_UTF8_FREE(valueDisplayUtf8);
+ VBOX_UTF8_FREE(valueDisplayUtf8);
if (guiPresent) {
if (guiDisplay) {
}
VBOX_RELEASE(serialPort);
- if (pathUtf16) {
- VBOX_UTF16_FREE(pathUtf16);
- pathUtf16 = NULL;
- }
+ VBOX_UTF16_FREE(pathUtf16);
}
}
}
parallelPort->vtbl->SetEnabled(parallelPort, 1);
VBOX_RELEASE(parallelPort);
- if (pathUtf16) {
- VBOX_UTF16_FREE(pathUtf16);
- pathUtf16 = NULL;
- }
+ VBOX_UTF16_FREE(pathUtf16);
}
}
}
break;
}
- if (nameUtf8)
- VBOX_UTF8_FREE(nameUtf8);
+ VBOX_UTF8_FREE(nameUtf8);
}
}
}
vboxIIDUnalloc(&hddIID);
}
- if (hddNameUtf8)
- VBOX_UTF8_FREE(hddNameUtf8);
+ VBOX_UTF8_FREE(hddNameUtf8);
}
VBOX_MEDIUM_RELEASE(hardDisk);
VIR_DEBUG("deregistering hdd:%d", deregister);
}
- if (controller)
- VBOX_UTF16_FREE(controller);
+ VBOX_UTF16_FREE(controller);
}
vboxIIDUnalloc(&iid);
}