[Spice-devel] [PATCH 05/22] Replace C-style initialization with shorter C++-style
Frediano Ziglio
fziglio at redhat.com
Wed Feb 28 16:32:34 UTC 2018
>
> From: Christophe de Dinechin <dinechin at redhat.com>
>
> The proper C++ equivalent of
> struct foo x;
> memset(&x, 0, sizeof(x));
> is
> struct foo x = {};
>
> Not only is it shorter, it is also safer for any non-POD type, since
> it will not overwrite vtable pointers, incorrectly zero
> pointer-to-member fields, or clobber default initializations if any
> was specified in the struct/class. So it is overall a good habit to
> take to avoid mistakes if the C style was copy-pasted for C++ structs.
>
> Signed-off-by: Christophe de Dinechin <dinechin at redhat.com>
Acked-by: Frediano Ziglio <fziglio at redhat.com>
Frediano
> ---
> src/spice-streaming-agent.cpp | 4 +---
> 1 file changed, 1 insertion(+), 3 deletions(-)
>
> diff --git a/src/spice-streaming-agent.cpp b/src/spice-streaming-agent.cpp
> index 7304576..acae939 100644
> --- a/src/spice-streaming-agent.cpp
> +++ b/src/spice-streaming-agent.cpp
> @@ -291,9 +291,7 @@ static void handle_interrupt(int intr)
>
> static void register_interrupts(void)
> {
> - struct sigaction sa;
> -
> - memset(&sa, 0, sizeof(sa));
> + struct sigaction sa = { };
> sa.sa_handler = handle_interrupt;
> if ((sigaction(SIGINT, &sa, NULL) != 0) &&
> (sigaction(SIGTERM, &sa, NULL) != 0)) {
More information about the Spice-devel
mailing list