Module: wine Branch: master Commit: afe626fb9972d612fd84a8a76eae6ef12f503465 URL: http://source.winehq.org/git/wine.git/?a=commit;h=afe626fb9972d612fd84a8a76e...
Author: Alexandre Julliard julliard@winehq.org Date: Tue Jun 30 14:27:35 2009 +0200
winemenubuilder: Use spawnvp() instead of system() to launch the xdg update scripts.
---
programs/winemenubuilder/winemenubuilder.c | 31 ++++++++------------------- 1 files changed, 9 insertions(+), 22 deletions(-)
diff --git a/programs/winemenubuilder/winemenubuilder.c b/programs/winemenubuilder/winemenubuilder.c index 27a9e5e..200cd0f 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: