mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-12-19 14:08:39 -07:00
g_new(T, n) is neater than g_malloc(sizeof(T) * n). It's also safer,
for two reasons. One, it catches multiplication overflowing size_t.
Two, it returns T * rather than void *, which lets the compiler catch
more type errors.
This commit only touches allocations with size arguments of the form
sizeof(T).
Coccinelle semantic patch:
@@
type T;
@@
-g_malloc(sizeof(T))
+g_new(T, 1)
@@
type T;
@@
-g_try_malloc(sizeof(T))
+g_try_new(T, 1)
@@
type T;
@@
-g_malloc0(sizeof(T))
+g_new0(T, 1)
@@
type T;
@@
-g_try_malloc0(sizeof(T))
+g_try_new0(T, 1)
@@
type T;
expression n;
@@
-g_malloc(sizeof(T) * (n))
+g_new(T, n)
@@
type T;
expression n;
@@
-g_try_malloc(sizeof(T) * (n))
+g_try_new(T, n)
@@
type T;
expression n;
@@
-g_malloc0(sizeof(T) * (n))
+g_new0(T, n)
@@
type T;
expression n;
@@
-g_try_malloc0(sizeof(T) * (n))
+g_try_new0(T, n)
@@
type T;
expression p, n;
@@
-g_realloc(p, sizeof(T) * (n))
+g_renew(T, p, n)
@@
type T;
expression p, n;
@@
-g_try_realloc(p, sizeof(T) * (n))
+g_try_renew(T, p, n)
@@
type T;
expression n;
@@
-(T *)g_new(T, n)
+g_new(T, n)
@@
type T;
expression n;
@@
-(T *)g_new0(T, n)
+g_new0(T, n)
@@
type T;
expression p, n;
@@
-(T *)g_renew(T, p, n)
+g_renew(T, p, n)
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Message-id: 1440524394-15640-1-git-send-email-armbru@redhat.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
|
||
|---|---|---|
| .. | ||
| macio | ||
| a9scu.c | ||
| applesmc.c | ||
| arm11scu.c | ||
| arm_integrator_debug.c | ||
| arm_l2x0.c | ||
| arm_sysctl.c | ||
| cbus.c | ||
| debugexit.c | ||
| eccmemctl.c | ||
| edu.c | ||
| exynos4210_pmu.c | ||
| imx_ccm.c | ||
| ivshmem.c | ||
| Makefile.objs | ||
| max111x.c | ||
| milkymist-hpdmc.c | ||
| milkymist-pfpu.c | ||
| mst_fpga.c | ||
| omap_clk.c | ||
| omap_gpmc.c | ||
| omap_l4.c | ||
| omap_sdrc.c | ||
| omap_tap.c | ||
| pc-testdev.c | ||
| pci-testdev.c | ||
| puv3_pm.c | ||
| pvpanic.c | ||
| sga.c | ||
| slavio_misc.c | ||
| stm32f2xx_syscfg.c | ||
| tmp105.c | ||
| tmp105.h | ||
| vmport.c | ||
| zynq_slcr.c | ||