summaryrefslogtreecommitdiff
path: root/app/twm/src
diff options
context:
space:
mode:
Diffstat (limited to 'app/twm/src')
-rw-r--r--app/twm/src/menus.c32
-rw-r--r--app/twm/src/util.c15
-rw-r--r--app/twm/src/util.h2
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 );