Module: wine Branch: master Commit: d3bf447f1b8fd2bf8770ec2eb8c1249d1e3c0759 URL: http://source.winehq.org/git/wine.git/?a=commit;h=d3bf447f1b8fd2bf8770ec2eb8...
Author: Damjan Jovanovic damjan.jov@gmail.com Date: Thu Jun 25 07:19:07 2009 +0200
winemenubuilder: Generate new menus in the right directory.
---
programs/winemenubuilder/winemenubuilder.c | 10 +++++----- 1 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/programs/winemenubuilder/winemenubuilder.c b/programs/winemenubuilder/winemenubuilder.c index cd3506b..fa74411 100644 --- a/programs/winemenubuilder/winemenubuilder.c +++ b/programs/winemenubuilder/winemenubuilder.c @@ -906,10 +906,10 @@ static BOOL write_menu_file(const char *unix_link, const char *filename)
while (1) { - tempfilename = tempnam(xdg_config_dir, "_wine"); + tempfilename = heap_printf("%s/wine-menu-XXXXXX", xdg_config_dir); if (tempfilename) { - int tempfd = open(tempfilename, O_EXCL | O_CREAT | O_WRONLY, 0666); + int tempfd = mkstemps(tempfilename, 0); if (tempfd >= 0) { tempfile = fdopen(tempfd, "w"); @@ -920,10 +920,10 @@ static BOOL write_menu_file(const char *unix_link, const char *filename) } else if (errno == EEXIST) { - free(tempfilename); + HeapFree(GetProcessHeap(), 0, tempfilename); continue; } - free(tempfilename); + HeapFree(GetProcessHeap(), 0, tempfilename); } return FALSE; } @@ -981,7 +981,7 @@ end: ret = (rename(tempfilename, menuPath) == 0); if (!ret && tempfilename) remove(tempfilename); - free(tempfilename); + HeapFree(GetProcessHeap(), 0, tempfilename); if (ret) { HKEY hkey = open_menus_reg_key();