aboutsummaryrefslogtreecommitdiff
path: root/nx-X11/lib/X11/XDefaultOMIF.c
diff options
context:
space:
mode:
authorAlan Coopersmith <alan.coopersmith@oracle.com>2011-02-01 12:30:56 +0200
committerUlrich Sibiller <uli42@gmx.de>2016-10-19 21:40:24 +0200
commit54550ebb2a1fc504406b199550b8e023ef2c9517 (patch)
treefa6f9d6e9349ad5690a3327dabe0a789d0ef6e39 /nx-X11/lib/X11/XDefaultOMIF.c
parentb7694b0b51cdf07f49d89132fbe100b5ebfb086b (diff)
downloadnx-libs-54550ebb2a1fc504406b199550b8e023ef2c9517.tar.gz
nx-libs-54550ebb2a1fc504406b199550b8e023ef2c9517.tar.bz2
nx-libs-54550ebb2a1fc504406b199550b8e023ef2c9517.zip
XDefaultOMIF.c: Fix memory leaks in get_font_name
Instead of copying the value returned by get_prop_name and then releasing it, directly use the return value of get_prop_name, which allocates memory for the name. If get_prop_name returns NULL, continue on to XFreeFont to release the font before returning the NULL via the normal function return. Reviewed-by: Erkki Seppälä <erkki.seppala@vincit.fi> Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> Backported-to-NX-by: Ulrich Sibiller <uli42@gmx.de>
Diffstat (limited to 'nx-X11/lib/X11/XDefaultOMIF.c')
-rw-r--r--nx-X11/lib/X11/XDefaultOMIF.c10
1 files changed, 2 insertions, 8 deletions
diff --git a/nx-X11/lib/X11/XDefaultOMIF.c b/nx-X11/lib/X11/XDefaultOMIF.c
index dbadd90aa..6975aa806 100644
--- a/nx-X11/lib/X11/XDefaultOMIF.c
+++ b/nx-X11/lib/X11/XDefaultOMIF.c
@@ -381,7 +381,7 @@ get_font_name(
XOC oc,
char *pattern)
{
- char **list, *name, *prop_name;
+ char **list, *name;
int count;
XFontStruct *fs;
Display *dpy = oc->core.om->core.display;
@@ -397,13 +397,7 @@ get_font_name(
fs = XLoadQueryFont(dpy, pattern);
if (fs == NULL) return NULL;
- prop_name = get_prop_name(dpy, fs);
- if (prop_name == NULL) return NULL;
-
- name = (char*) Xmalloc(strlen(prop_name) + 1);
- if (name)
- strcpy(name, prop_name);
-
+ name = get_prop_name(dpy, fs);
XFreeFont(dpy, fs);
}
return name;