mirror of
https://github.com/gnif/LookingGlass.git
synced 2024-11-10 00:28:20 +00:00
[common] use variable-relative sizeof where possible
This commit is contained in:
parent
982b4e6625
commit
1c5620ba25
@ -24,7 +24,7 @@
|
|||||||
|
|
||||||
struct CountedBuffer * countedBufferNew(size_t size)
|
struct CountedBuffer * countedBufferNew(size_t size)
|
||||||
{
|
{
|
||||||
struct CountedBuffer * buffer = malloc(sizeof(struct CountedBuffer) + size);
|
struct CountedBuffer * buffer = malloc(sizeof(*buffer) + size);
|
||||||
if (!buffer)
|
if (!buffer)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
|
@ -120,14 +120,14 @@ bool option_register(struct Option options[])
|
|||||||
|
|
||||||
state.options = realloc(
|
state.options = realloc(
|
||||||
state.options,
|
state.options,
|
||||||
sizeof(struct Option *) * (state.oCount + new)
|
sizeof(*state.options) * (state.oCount + new)
|
||||||
);
|
);
|
||||||
|
|
||||||
for(int i = 0; options[i].type != OPTION_TYPE_NONE; ++i)
|
for(int i = 0; options[i].type != OPTION_TYPE_NONE; ++i)
|
||||||
{
|
{
|
||||||
state.options[state.oCount + i] = (struct Option *)malloc(sizeof(struct Option));
|
state.options[state.oCount + i] = (struct Option *)malloc(sizeof(**state.options));
|
||||||
struct Option * o = state.options[state.oCount + i];
|
struct Option * o = state.options[state.oCount + i];
|
||||||
memcpy(o, &options[i], sizeof(struct Option));
|
memcpy(o, &options[i], sizeof(*o));
|
||||||
|
|
||||||
if (!o->parser)
|
if (!o->parser)
|
||||||
{
|
{
|
||||||
@ -199,7 +199,7 @@ bool option_register(struct Option options[])
|
|||||||
found = true;
|
found = true;
|
||||||
group->options = realloc(
|
group->options = realloc(
|
||||||
group->options,
|
group->options,
|
||||||
sizeof(struct Option *) * (group->count + 1)
|
sizeof(*group->options) * (group->count + 1)
|
||||||
);
|
);
|
||||||
group->options[group->count] = o;
|
group->options[group->count] = o;
|
||||||
|
|
||||||
@ -215,14 +215,14 @@ bool option_register(struct Option options[])
|
|||||||
{
|
{
|
||||||
state.groups = realloc(
|
state.groups = realloc(
|
||||||
state.groups,
|
state.groups,
|
||||||
sizeof(struct OptionGroup) * (state.gCount + 1)
|
sizeof(*state.groups) * (state.gCount + 1)
|
||||||
);
|
);
|
||||||
|
|
||||||
struct OptionGroup * group = &state.groups[state.gCount];
|
struct OptionGroup * group = &state.groups[state.gCount];
|
||||||
++state.gCount;
|
++state.gCount;
|
||||||
|
|
||||||
group->module = o->module;
|
group->module = o->module;
|
||||||
group->options = malloc(sizeof(struct Option *));
|
group->options = malloc(sizeof(*group->options));
|
||||||
group->options[0] = o;
|
group->options[0] = o;
|
||||||
group->count = 1;
|
group->count = 1;
|
||||||
group->pad = strlen(o->name);
|
group->pad = strlen(o->name);
|
||||||
|
@ -164,7 +164,7 @@ static int dl_iterate_phdr_callback(struct dl_phdr_info * info, size_t size, voi
|
|||||||
ttl += hdr.p_memsz;
|
ttl += hdr.p_memsz;
|
||||||
}
|
}
|
||||||
|
|
||||||
crash.ranges = realloc(crash.ranges, sizeof(struct range) * (crash.rangeCount + 1));
|
crash.ranges = realloc(crash.ranges, sizeof(*crash.ranges) * (crash.rangeCount + 1));
|
||||||
crash.ranges[crash.rangeCount].start = info->dlpi_addr;
|
crash.ranges[crash.rangeCount].start = info->dlpi_addr;
|
||||||
crash.ranges[crash.rangeCount].end = info->dlpi_addr + ttl;
|
crash.ranges[crash.rangeCount].end = info->dlpi_addr + ttl;
|
||||||
++crash.rangeCount;
|
++crash.rangeCount;
|
||||||
|
@ -39,7 +39,7 @@ struct LGEvent
|
|||||||
|
|
||||||
LGEvent * lgCreateEvent(bool autoReset, unsigned int msSpinTime)
|
LGEvent * lgCreateEvent(bool autoReset, unsigned int msSpinTime)
|
||||||
{
|
{
|
||||||
LGEvent * handle = (LGEvent *)calloc(sizeof(LGEvent), 1);
|
LGEvent * handle = (LGEvent *)calloc(sizeof(*handle), 1);
|
||||||
if (!handle)
|
if (!handle)
|
||||||
{
|
{
|
||||||
DEBUG_ERROR("Failed to allocate memory");
|
DEBUG_ERROR("Failed to allocate memory");
|
||||||
|
@ -171,8 +171,7 @@ bool ivshmemOpenDev(struct IVSHMEM * dev, const char * shmDevice)
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
struct IVSHMEMInfo * info =
|
struct IVSHMEMInfo * info = (struct IVSHMEMInfo *)malloc(sizeof(*info));
|
||||||
(struct IVSHMEMInfo *)malloc(sizeof(struct IVSHMEMInfo));
|
|
||||||
info->size = devSize;
|
info->size = devSize;
|
||||||
info->devFd = devFd;
|
info->devFd = devFd;
|
||||||
info->hasDMA = hasDMA;
|
info->hasDMA = hasDMA;
|
||||||
|
@ -43,7 +43,7 @@ static void * threadWrapper(void * opaque)
|
|||||||
|
|
||||||
bool lgCreateThread(const char * name, LGThreadFunction function, void * opaque, LGThread ** handle)
|
bool lgCreateThread(const char * name, LGThreadFunction function, void * opaque, LGThread ** handle)
|
||||||
{
|
{
|
||||||
*handle = (LGThread*)malloc(sizeof(LGThread));
|
*handle = (LGThread*)malloc(sizeof(**handle));
|
||||||
(*handle)->name = name;
|
(*handle)->name = name;
|
||||||
(*handle)->function = function;
|
(*handle)->function = function;
|
||||||
(*handle)->opaque = opaque;
|
(*handle)->opaque = opaque;
|
||||||
|
@ -49,7 +49,7 @@ static void TimerProc(union sigval arg)
|
|||||||
bool lgCreateTimer(const unsigned int intervalMS, LGTimerFn fn,
|
bool lgCreateTimer(const unsigned int intervalMS, LGTimerFn fn,
|
||||||
void * udata, LGTimer ** result)
|
void * udata, LGTimer ** result)
|
||||||
{
|
{
|
||||||
LGTimer * ret = malloc(sizeof(LGTimer));
|
LGTimer * ret = malloc(sizeof(*ret));
|
||||||
|
|
||||||
if (!ret)
|
if (!ret)
|
||||||
{
|
{
|
||||||
|
@ -80,7 +80,7 @@ bool ivshmemInit(struct IVSHMEM * dev)
|
|||||||
SP_DEVICE_INTERFACE_DATA devInterfaceData = {0};
|
SP_DEVICE_INTERFACE_DATA devInterfaceData = {0};
|
||||||
int deviceAllocated = 1;
|
int deviceAllocated = 1;
|
||||||
int deviceCount = 0;
|
int deviceCount = 0;
|
||||||
struct IVSHMEMData * devices = malloc(sizeof(struct IVSHMEMData) * deviceAllocated);
|
struct IVSHMEMData * devices = malloc(sizeof(*devices) * deviceAllocated);
|
||||||
|
|
||||||
devInfoSet = SetupDiGetClassDevs(&GUID_DEVINTERFACE_IVSHMEM, NULL, NULL, DIGCF_PRESENT | DIGCF_DEVICEINTERFACE);
|
devInfoSet = SetupDiGetClassDevs(&GUID_DEVINTERFACE_IVSHMEM, NULL, NULL, DIGCF_PRESENT | DIGCF_DEVICEINTERFACE);
|
||||||
devInfoData.cbSize = sizeof(SP_DEVINFO_DATA);
|
devInfoData.cbSize = sizeof(SP_DEVINFO_DATA);
|
||||||
@ -97,7 +97,7 @@ bool ivshmemInit(struct IVSHMEM * dev)
|
|||||||
if (deviceCount >= deviceAllocated)
|
if (deviceCount >= deviceAllocated)
|
||||||
{
|
{
|
||||||
int newCount = deviceAllocated * 2;
|
int newCount = deviceAllocated * 2;
|
||||||
void * new = realloc(devices, newCount * sizeof(struct IVSHMEMData));
|
struct IVSHMEMData * new = realloc(devices, newCount * sizeof(*new));
|
||||||
if (!new)
|
if (!new)
|
||||||
{
|
{
|
||||||
DEBUG_ERROR("Failed to allocate memory");
|
DEBUG_ERROR("Failed to allocate memory");
|
||||||
@ -133,7 +133,7 @@ bool ivshmemInit(struct IVSHMEM * dev)
|
|||||||
}
|
}
|
||||||
|
|
||||||
const int shmDevice = option_get_int("os", "shmDevice");
|
const int shmDevice = option_get_int("os", "shmDevice");
|
||||||
qsort(devices, deviceCount, sizeof(struct IVSHMEMData), ivshmemComparator);
|
qsort(devices, deviceCount, sizeof(*devices), ivshmemComparator);
|
||||||
|
|
||||||
for (int i = 0; i < deviceCount; ++i)
|
for (int i = 0; i < deviceCount; ++i)
|
||||||
{
|
{
|
||||||
@ -181,8 +181,7 @@ bool ivshmemInit(struct IVSHMEM * dev)
|
|||||||
free(infData);
|
free(infData);
|
||||||
SetupDiDestroyDeviceInfoList(devInfoSet);
|
SetupDiDestroyDeviceInfoList(devInfoSet);
|
||||||
|
|
||||||
struct IVSHMEMInfo * info =
|
struct IVSHMEMInfo * info = (struct IVSHMEMInfo *)malloc(sizeof(*info));
|
||||||
(struct IVSHMEMInfo *)malloc(sizeof(struct IVSHMEMInfo));
|
|
||||||
|
|
||||||
info->handle = handle;
|
info->handle = handle;
|
||||||
dev->opaque = info;
|
dev->opaque = info;
|
||||||
|
@ -44,7 +44,7 @@ static DWORD WINAPI threadWrapper(LPVOID lpParameter)
|
|||||||
|
|
||||||
bool lgCreateThread(const char * name, LGThreadFunction function, void * opaque, LGThread ** handle)
|
bool lgCreateThread(const char * name, LGThreadFunction function, void * opaque, LGThread ** handle)
|
||||||
{
|
{
|
||||||
*handle = (LGThread *)malloc(sizeof(LGThread));
|
*handle = (LGThread *)malloc(sizeof(**handle));
|
||||||
(*handle)->name = name;
|
(*handle)->name = name;
|
||||||
(*handle)->function = function;
|
(*handle)->function = function;
|
||||||
(*handle)->opaque = opaque;
|
(*handle)->opaque = opaque;
|
||||||
|
@ -45,7 +45,7 @@ static void TimerProc(HWND Arg1, UINT Arg2, UINT_PTR Arg3, DWORD Arg4)
|
|||||||
bool lgCreateTimer(const unsigned int intervalMS, LGTimerFn fn,
|
bool lgCreateTimer(const unsigned int intervalMS, LGTimerFn fn,
|
||||||
void * udata, LGTimer ** result)
|
void * udata, LGTimer ** result)
|
||||||
{
|
{
|
||||||
LGTimer * ret = malloc(sizeof(LGTimer));
|
LGTimer * ret = malloc(sizeof(*ret));
|
||||||
if (!ret)
|
if (!ret)
|
||||||
{
|
{
|
||||||
DEBUG_ERROR("failed to malloc LGTimer struct");
|
DEBUG_ERROR("failed to malloc LGTimer struct");
|
||||||
|
@ -32,7 +32,7 @@ struct StringList
|
|||||||
|
|
||||||
StringList stringlist_new(bool owns_strings)
|
StringList stringlist_new(bool owns_strings)
|
||||||
{
|
{
|
||||||
StringList sl = malloc(sizeof(struct StringList));
|
StringList sl = malloc(sizeof(*sl));
|
||||||
|
|
||||||
sl->owns_strings = owns_strings;
|
sl->owns_strings = owns_strings;
|
||||||
sl->size = 32;
|
sl->size = 32;
|
||||||
@ -58,7 +58,7 @@ int stringlist_push (StringList sl, char * str)
|
|||||||
if (sl->count == sl->size)
|
if (sl->count == sl->size)
|
||||||
{
|
{
|
||||||
sl->size += 32;
|
sl->size += 32;
|
||||||
sl->list = realloc(sl->list, sizeof(char *) * sl->size);
|
sl->list = realloc(sl->list, sizeof(*sl->list) * sl->size);
|
||||||
}
|
}
|
||||||
|
|
||||||
unsigned int index = sl->count;
|
unsigned int index = sl->count;
|
||||||
@ -77,4 +77,4 @@ char * stringlist_at(StringList sl, unsigned int index)
|
|||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
return sl->list[index];
|
return sl->list[index];
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user