[Spice-devel] [PATCH v2 x11spice 1/4] Convert to the use of glib memory routines in options.c.
Frediano Ziglio
fziglio at redhat.com
Mon Jul 22 10:16:20 UTC 2019
>
> Signed-off-by: Jeremy White <jwhite at codeweavers.com>
I didn't expected you would change everything :-)
> ---
> src/options.c | 44 ++++++++++++++++++++------------------------
> 1 file changed, 20 insertions(+), 24 deletions(-)
>
> diff --git a/src/options.c b/src/options.c
> index b7f487c5..a206c92c 100644
> --- a/src/options.c
> +++ b/src/options.c
> @@ -52,10 +52,10 @@ void options_init(options_t *options)
>
> void options_free(options_t *options)
> {
> - if (options->display) {
> - free(options->display);
> - options->display = NULL;
> - }
> + g_free(options->display);
> + options->display = NULL;
> + g_free(options->listen);
> + options->listen = NULL;
>
> g_free(options->spice_password);
> options->spice_password = NULL;
> @@ -69,10 +69,6 @@ void options_free(options_t *options)
> g_free(options->on_disconnect);
> options->on_disconnect = NULL;
>
> - if (options->listen)
> - free(options->listen);
> - options->listen = NULL;
> -
> g_free(options->user_config_file);
> options->user_config_file = NULL;
>
> @@ -159,7 +155,7 @@ static void usage(char *argv0)
> int options_handle_ssl(options_t *options, const char *spec)
> {
> char *save = NULL;
> - char *in = strdup(spec);
> + char *in = g_strdup(spec);
> char *p;
> int i = 0;
> int rc = 0;
> @@ -173,22 +169,22 @@ int options_handle_ssl(options_t *options, const char
> *spec)
>
> switch(i) {
> case 0:
> - options->ssl.ca_cert_file = strdup(p);
> + options->ssl.ca_cert_file = g_strdup(p);
> break;
> case 1:
> - options->ssl.certs_file = strdup(p);
> + options->ssl.certs_file = g_strdup(p);
> break;
> case 2:
> - options->ssl.private_key_file = strdup(p);
> + options->ssl.private_key_file = g_strdup(p);
> break;
> case 3:
> - options->ssl.key_password = strdup(p);
> + options->ssl.key_password = g_strdup(p);
> break;
> case 4:
> - options->ssl.dh_key_file = strdup(p);
> + options->ssl.dh_key_file = g_strdup(p);
> break;
> case 5:
> - options->ssl.ciphersuite = strdup(p);
> + options->ssl.ciphersuite = g_strdup(p);
> break;
> default:
> fprintf(stderr, "Error: invalid ssl specification.");
> @@ -197,7 +193,7 @@ int options_handle_ssl(options_t *options, const char
> *spec)
> }
> }
>
> - free(in);
> + g_free(in);
> return rc;
> }
>
> @@ -218,7 +214,7 @@ void options_handle_user_config(int argc, char *argv[],
> options_t *options)
> int i;
> for (i = 1; i < argc - 1; i++)
> if (strcmp(argv[i], "--config") == 0 || strcmp(argv[i], "-config")
> == 0) {
> - options->user_config_file = strdup(argv[i + 1]);
> + options->user_config_file = g_strdup(argv[i + 1]);
> i++;
> }
> }
> @@ -278,11 +274,11 @@ int options_parse_arguments(int argc, char *argv[],
> options_t *options)
> break;
>
> case OPTION_PASSWORD:
> - options->spice_password = strdup(optarg);
> + options->spice_password = g_strdup(optarg);
> break;
>
> case OPTION_PASSWORD_FILE:
> - options->password_file = strdup(optarg);
> + options->password_file = g_strdup(optarg);
> break;
>
> case OPTION_CONFIG:
> @@ -305,7 +301,7 @@ int options_parse_arguments(int argc, char *argv[],
> options_t *options)
> break;
>
> case OPTION_DISPLAY:
> - options->display = strdup(optarg);
> + options->display = g_strdup(optarg);
> break;
>
> case OPTION_MINIMIZE:
> @@ -335,12 +331,12 @@ int options_parse_arguments(int argc, char *argv[],
> options_t *options)
> if (rc == 0) {
> if (optind >= argc) {
> /* Default */
> - options->listen = strdup("5900");
> + options->listen = g_strdup("5900");
> } else if (optind < (argc - 1)) {
> fprintf(stderr, "Error: too many arguments\n");
> rc = X11SPICE_ERR_BADARGS;
> } else {
> - options->listen = strdup(argv[optind]);
> + options->listen = g_strdup(argv[optind]);
> }
> }
>
> @@ -434,7 +430,7 @@ static int process_password_file(options_t *options)
> if (p > buf && *(p - 1) == '\n')
> *(p - 1) = '\0';
>
> - options->spice_password = strdup(buf);
> + options->spice_password = g_strdup(buf);
>
> return rc;
> }
> @@ -449,7 +445,7 @@ static int generate_password(options_t *options)
> if (fd < 0)
> return X11SPICE_ERR_OPEN;
>
> - p = options->spice_password = malloc(options->generate_password + 1);
> + p = options->spice_password = g_malloc(options->generate_password + 1);
> if (!p)
g_malloc never returns NULL. Do you want to remove the check and accept
the abort() or use g_try_malloc ? I suppose the first giving the above code
and the fact that many old strdup assumed strdup never returned NULL.
> return X11SPICE_ERR_MALLOC;
>
Frediano
More information about the Spice-devel
mailing list