Damjan Jovanovic : winemenubuilder: Escape XML special characters in menus.
Alexandre Julliard
julliard at winehq.org
Mon Nov 16 11:43:53 CST 2009
Module: wine
Branch: master
Commit: 03e9fbb515585fa7d42e04e1d96c5a10a14d006c
URL: http://source.winehq.org/git/wine.git/?a=commit;h=03e9fbb515585fa7d42e04e1d96c5a10a14d006c
Author: Damjan Jovanovic <damjan.jov at gmail.com>
Date: Sat Nov 14 09:10:30 2009 +0200
winemenubuilder: Escape XML special characters in menus.
---
programs/winemenubuilder/winemenubuilder.c | 12 +++++++++---
1 files changed, 9 insertions(+), 3 deletions(-)
diff --git a/programs/winemenubuilder/winemenubuilder.c b/programs/winemenubuilder/winemenubuilder.c
index 7bcdd44..e14fe81 100644
--- a/programs/winemenubuilder/winemenubuilder.c
+++ b/programs/winemenubuilder/winemenubuilder.c
@@ -991,8 +991,12 @@ static BOOL write_menu_file(const char *unix_link, const char *filename)
struct stat st;
name[i] = 0;
fprintf(tempfile, " <Menu>\n");
- fprintf(tempfile, " <Name>%s%s</Name>\n", count ? "" : "wine-", name);
- fprintf(tempfile, " <Directory>%s%s.directory</Directory>\n", count ? "" : "wine-", name);
+ fprintf(tempfile, " <Name>%s", count ? "" : "wine-");
+ write_xml_text(tempfile, name);
+ fprintf(tempfile, "</Name>\n");
+ fprintf(tempfile, " <Directory>%s", count ? "" : "wine-");
+ write_xml_text(tempfile, name);
+ fprintf(tempfile, ".directory</Directory>\n");
dir_file_name = heap_printf("%s/desktop-directories/%s%s.directory",
xdg_data_dir, count ? "" : "wine-", name);
if (dir_file_name)
@@ -1009,7 +1013,9 @@ static BOOL write_menu_file(const char *unix_link, const char *filename)
name[i] = 0;
fprintf(tempfile, " <Include>\n");
- fprintf(tempfile, " <Filename>%s</Filename>\n", name);
+ fprintf(tempfile, " <Filename>");
+ write_xml_text(tempfile, name);
+ fprintf(tempfile, "</Filename>\n");
fprintf(tempfile, " </Include>\n");
for (i = 0; i < count; i++)
fprintf(tempfile, " </Menu>\n");
More information about the wine-cvs
mailing list