diff options
Diffstat (limited to 'app/twm/src')
-rw-r--r-- | app/twm/src/menus.c | 32 | ||||
-rw-r--r-- | app/twm/src/util.c | 15 | ||||
-rw-r--r-- | app/twm/src/util.h | 2 |
3 files changed, 24 insertions, 25 deletions
diff --git a/app/twm/src/menus.c b/app/twm/src/menus.c index a39044497..8aa99c7ec 100644 --- a/app/twm/src/menus.c +++ b/app/twm/src/menus.c @@ -2020,7 +2020,7 @@ ExecuteFunction(int func, const char *action, Window w, TwmWindow *tmp_win, "%s: unable to open cut file \"%s\"\n", ProgramName, tmp); } - if (ptr != tmp) free (ptr); + free (ptr); } } else { XFree(ptr); @@ -2171,21 +2171,25 @@ ExecuteFunction(int func, const char *action, Window w, TwmWindow *tmp_win, case F_FILE: ptr = ExpandFilename(action); - fd = open(ptr, O_RDONLY); - if (fd >= 0) - { - count = read(fd, buff, MAX_FILE_SIZE - 1); - if (count > 0) - XStoreBytes(dpy, buff, count); + if (ptr) { + fd = open(ptr, O_RDONLY); + if (fd >= 0) + { + count = read(fd, buff, MAX_FILE_SIZE - 1); + if (count > 0) + XStoreBytes(dpy, buff, count); - close(fd); - } - else - { - fprintf (stderr, "%s: unable to open file \"%s\"\n", - ProgramName, ptr); + close(fd); + } + else + { + fprintf (stderr, "%s: unable to open file \"%s\"\n", + ProgramName, ptr); + } + free(ptr); + } else { + fprintf (stderr, "%s: error expanding filename\n", ProgramName); } - if (ptr != action) free(ptr); break; case F_REFRESH: diff --git a/app/twm/src/util.c b/app/twm/src/util.c index e54eca850..fc5bf7d41 100644 --- a/app/twm/src/util.c +++ b/app/twm/src/util.c @@ -256,11 +256,11 @@ Zoom(Window wf, Window wt) * \param name the filename to expand */ char * -ExpandFilename(char *name) +ExpandFilename(const char *name) { char *newname; - if (name[0] != '~') return name; + if (name[0] != '~') return strdup(name); asprintf(&newname, "%s/%s", Home, &name[1]); if (!newname) { @@ -348,7 +348,7 @@ FindBitmap (const char *name, unsigned *widthp, unsigned *heightp) pm = XmuLocateBitmapFile (ScreenOfDisplay(dpy, Scr->screen), bigname, NULL, 0, (int *)widthp, (int *)heightp, &HotX, &HotY); if (pm == None && Scr->IconDirectory && bigname[0] != '/') { - if (bigname != name) free (bigname); + free (bigname); /* * Attempt to find icon in old IconDirectory (now obsolete) */ @@ -364,7 +364,7 @@ FindBitmap (const char *name, unsigned *widthp, unsigned *heightp) pm = None; } } - if (bigname != name) free (bigname); + free (bigname); if (pm == None) { fprintf (stderr, "%s: unable to find bitmap \"%s\"\n", ProgramName, name); @@ -586,17 +586,13 @@ GetFont(MyFont *font) int ascent; int descent; int fnum; - char *basename2; if (use_fontset) { if (font->fontset != NULL){ XFreeFontSet(dpy, font->fontset); } - asprintf(&basename2, "%s,*", font->name); - if (!basename2) - basename2 = font->name; - if( (font->fontset = XCreateFontSet(dpy, basename2, + if( (font->fontset = XCreateFontSet(dpy, font->name, &missing_charset_list_return, &missing_charset_count_return, &def_string_return)) == NULL) { @@ -604,7 +600,6 @@ GetFont(MyFont *font) ProgramName, font->name); exit(1); } - if (basename2 != font->name) free(basename2); for(i=0; i<missing_charset_count_return; i++){ printf("%s: warning: font for charset %s is lacking.\n", ProgramName, missing_charset_list_return[i]); diff --git a/app/twm/src/util.h b/app/twm/src/util.h index 7f4527cd6..4b2d3a82a 100644 --- a/app/twm/src/util.h +++ b/app/twm/src/util.h @@ -64,7 +64,7 @@ in this Software without prior written authorization from The Open Group. extern void MoveOutline ( Window root, int x, int y, int width, int height, int bw, int th ); extern void Zoom ( Window wf, Window wt ); -extern char * ExpandFilename ( char *name ); +extern char * ExpandFilename ( const char *name ); extern void GetUnknownIcon ( const char *name ); extern Pixmap FindBitmap ( const char *name, unsigned int *widthp, unsigned int *heightp ); |