[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 12/24] qemu-char: Use g_new() & friends where that ma
From: |
Paolo Bonzini |
Subject: |
[Qemu-devel] [PULL 12/24] qemu-char: Use g_new() & friends where that makes obvious sense |
Date: |
Wed, 16 Sep 2015 14:29:43 +0200 |
From: Markus Armbruster <address@hidden>
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). Same Coccinelle semantic patch as in commit b45c03f.
Signed-off-by: Markus Armbruster <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
---
backends/testdev.c | 4 ++--
qemu-char.c | 22 +++++++++++-----------
2 files changed, 13 insertions(+), 13 deletions(-)
diff --git a/backends/testdev.c b/backends/testdev.c
index eba396a..1429152 100644
--- a/backends/testdev.c
+++ b/backends/testdev.c
@@ -113,8 +113,8 @@ CharDriverState *chr_testdev_init(void)
TestdevCharState *testdev;
CharDriverState *chr;
- testdev = g_malloc0(sizeof(TestdevCharState));
- testdev->chr = chr = g_malloc0(sizeof(CharDriverState));
+ testdev = g_new0(TestdevCharState, 1);
+ testdev->chr = chr = g_new0(CharDriverState, 1);
chr->opaque = testdev;
chr->chr_write = testdev_write;
diff --git a/qemu-char.c b/qemu-char.c
index dd83203..653ea10 100644
--- a/qemu-char.c
+++ b/qemu-char.c
@@ -685,7 +685,7 @@ static CharDriverState *qemu_chr_open_mux(CharDriverState
*drv)
MuxDriver *d;
chr = qemu_chr_alloc();
- d = g_malloc0(sizeof(MuxDriver));
+ d = g_new0(MuxDriver, 1);
chr->opaque = d;
d->drv = drv;
@@ -1064,7 +1064,7 @@ static CharDriverState *qemu_chr_open_fd(int fd_in, int
fd_out)
FDCharDriver *s;
chr = qemu_chr_alloc();
- s = g_malloc0(sizeof(FDCharDriver));
+ s = g_new0(FDCharDriver, 1);
s->fd_in = io_channel_from_fd(fd_in);
s->fd_out = io_channel_from_fd(fd_out);
qemu_set_nonblock(fd_out);
@@ -1413,7 +1413,7 @@ static CharDriverState *qemu_chr_open_pty(const char *id,
fprintf(stderr, "char device redirected to %s (label %s)\n",
pty_name, id);
- s = g_malloc0(sizeof(PtyCharDriver));
+ s = g_new0(PtyCharDriver, 1);
chr->opaque = s;
chr->chr_write = pty_chr_write;
chr->chr_update_read_handler = pty_chr_update_read_handler;
@@ -1762,7 +1762,7 @@ static CharDriverState *qemu_chr_open_pp_fd(int fd)
return NULL;
}
- drv = g_malloc0(sizeof(ParallelCharDriver));
+ drv = g_new0(ParallelCharDriver, 1);
drv->fd = fd;
drv->mode = IEEE1284_MODE_COMPAT;
@@ -2050,7 +2050,7 @@ static CharDriverState *qemu_chr_open_win_path(const char
*filename)
WinCharState *s;
chr = qemu_chr_alloc();
- s = g_malloc0(sizeof(WinCharState));
+ s = g_new0(WinCharState, 1);
chr->opaque = s;
chr->chr_write = win_chr_write;
chr->chr_close = win_chr_close;
@@ -2149,7 +2149,7 @@ static CharDriverState *qemu_chr_open_pipe(ChardevHostdev
*opts)
WinCharState *s;
chr = qemu_chr_alloc();
- s = g_malloc0(sizeof(WinCharState));
+ s = g_new0(WinCharState, 1);
chr->opaque = s;
chr->chr_write = win_chr_write;
chr->chr_close = win_chr_close;
@@ -2168,7 +2168,7 @@ static CharDriverState *qemu_chr_open_win_file(HANDLE
fd_out)
WinCharState *s;
chr = qemu_chr_alloc();
- s = g_malloc0(sizeof(WinCharState));
+ s = g_new0(WinCharState, 1);
s->hcom = fd_out;
chr->opaque = s;
chr->chr_write = win_chr_write;
@@ -2324,7 +2324,7 @@ static CharDriverState *qemu_chr_open_stdio(ChardevStdio
*opts)
int is_console = 0;
chr = qemu_chr_alloc();
- stdio = g_malloc0(sizeof(WinStdioCharState));
+ stdio = g_new0(WinStdioCharState, 1);
stdio->hStdIn = GetStdHandle(STD_INPUT_HANDLE);
if (stdio->hStdIn == INVALID_HANDLE_VALUE) {
@@ -2487,7 +2487,7 @@ static CharDriverState *qemu_chr_open_udp_fd(int fd)
NetCharDriver *s = NULL;
chr = qemu_chr_alloc();
- s = g_malloc0(sizeof(NetCharDriver));
+ s = g_new0(NetCharDriver, 1);
s->fd = fd;
s->chan = io_channel_from_socket(s->fd);
@@ -2713,7 +2713,7 @@ static int tcp_set_msgfds(CharDriverState *chr, int *fds,
int num)
g_free(s->write_msgfds);
if (num) {
- s->write_msgfds = g_malloc(num * sizeof(int));
+ s->write_msgfds = g_new(int, num);
memcpy(s->write_msgfds, fds, num * sizeof(int));
}
@@ -4144,7 +4144,7 @@ static CharDriverState
*qmp_chardev_open_socket(ChardevSocket *sock,
int64_t reconnect = sock->has_reconnect ? sock->reconnect : 0;
chr = qemu_chr_alloc();
- s = g_malloc0(sizeof(TCPCharDriver));
+ s = g_new0(TCPCharDriver, 1);
s->fd = -1;
s->listen_fd = -1;
--
2.5.0
- [Qemu-devel] [PULL 00/24] Misc patches for 2015-09-16, Paolo Bonzini, 2015/09/16
- [Qemu-devel] [PULL 01/24] pci: remove Link Training error from AER error list, Paolo Bonzini, 2015/09/16
- [Qemu-devel] [PULL 02/24] update Linux headers to 4.3-rc1, Paolo Bonzini, 2015/09/16
- [Qemu-devel] [PULL 06/24] kvm: Add kvm system event crash handler, Paolo Bonzini, 2015/09/16
- [Qemu-devel] [PULL 03/24] update-linux-headers: copy standard-headers files one by one, Paolo Bonzini, 2015/09/16
- [Qemu-devel] [PULL 04/24] target-i386: move asm-x86/hyperv.h to standard-headers, Paolo Bonzini, 2015/09/16
- [Qemu-devel] [PULL 05/24] cpu: Add crash_occurred flag into CPUState, Paolo Bonzini, 2015/09/16
- [Qemu-devel] [PULL 08/24] hmp-commands-info: move info_cmds content out of monitor.c, Paolo Bonzini, 2015/09/16
- [Qemu-devel] [PULL 07/24] i386/kvm: Hyper-v crash msrs set/get'ers and migration, Paolo Bonzini, 2015/09/16
- [Qemu-devel] [PULL 10/24] hmp-commands.hx: fix end of table info, Paolo Bonzini, 2015/09/16
- [Qemu-devel] [PULL 12/24] qemu-char: Use g_new() & friends where that makes obvious sense,
Paolo Bonzini <=
- [Qemu-devel] [PULL 11/24] monitor: added generation of documentation for hmp-commands-info.hx, Paolo Bonzini, 2015/09/16
- [Qemu-devel] [PULL 13/24] cpu-exec: Migrate some generic fns to cpu-exec-common, Paolo Bonzini, 2015/09/16
- [Qemu-devel] [PULL 14/24] translate-all: Move tcg_handle_interrupt() to -common, Paolo Bonzini, 2015/09/16
- [Qemu-devel] [PULL 16/24] tcg: Move tci_tb_ptr to -common, Paolo Bonzini, 2015/09/16
[Qemu-devel] [PULL 15/24] tcg: split tcg_op_defs to -common, Paolo Bonzini, 2015/09/16
[Qemu-devel] [PULL 09/24] monitor: remove target-specific code from monitor.c, Paolo Bonzini, 2015/09/16