From afe626fb9972d612fd84a8a76eae6ef12f503465 Mon Sep 17 00:00:00 2001 From: Alexandre Julliard Date: Tue, 30 Jun 2009 14:27:35 +0200 Subject: [PATCH] winemenubuilder: Use spawnvp() instead of system() to launch the xdg update scripts. --- programs/winemenubuilder/winemenubuilder.c | 31 +++++++--------------- 1 file changed, 9 insertions(+), 22 deletions(-) diff --git a/programs/winemenubuilder/winemenubuilder.c b/programs/winemenubuilder/winemenubuilder.c index 27a9e5e9d85..200cd0ffa8a 100644 --- a/programs/winemenubuilder/winemenubuilder.c +++ b/programs/winemenubuilder/winemenubuilder.c @@ -2525,29 +2525,16 @@ static void RefreshFileTypeAssociations(void) hasChanged |= cleanup_associations(); if (hasChanged) { - char *command = heap_printf("update-mime-database %s", mime_dir); - if (command) - { - system(command); - HeapFree(GetProcessHeap(), 0, command); - } - else - { - WINE_ERR("out of memory\n"); - goto end; - } + const char *argv[3]; - command = heap_printf("update-desktop-database %s/applications", xdg_data_dir); - if (command) - { - system(command); - HeapFree(GetProcessHeap(), 0, command); - } - else - { - WINE_ERR("out of memory\n"); - goto end; - } + argv[0] = "update-mime-database"; + argv[1] = mime_dir; + argv[2] = NULL; + spawnvp( _P_NOWAIT, argv[0], argv ); + + argv[0] = "update-desktop-database"; + argv[1] = applications_dir; + spawnvp( _P_NOWAIT, argv[0], argv ); } end: