pkgsrc/x11/Xaw-Xpm/patches/patch-aa
2007-10-09 11:09:21 +00:00

96 lines
2.8 KiB
Text

$NetBSD: patch-aa,v 1.4 2007/10/09 11:09:22 rillig Exp $
Handle wide signal masks.
For the removal of the type casts, see patch-ak.
--- Xpm.c.orig 1996-11-26 14:40:26.000000000 +0100
+++ Xpm.c 2007-10-09 12:54:37.000000000 +0200
@@ -46,7 +46,7 @@ char directory[MAXPATHLEN];
}
chdir(directory);
}
- (PixmapNode *)PixList.first = (PixmapNode *)pixnode;
+ PixList.first = pixnode;
pixnode->next = NULL;
PixList.n_entries = 1;
pixnode->filename = filename;
@@ -55,18 +55,18 @@ char directory[MAXPATHLEN];
/* Is the pixmap already in the list? */
- (PixmapNode *)pixnode = (PixmapNode *)PixList.first;
+ pixnode = PixList.first;
for(;;)
{
if(strncmp(filename,pixnode->filename, MAXPATHLEN) == 0)
return((Pixmap *)&pixnode->pixmap);
if(pixnode->next == NULL) break;
- (PixmapNode *)pixnode = (PixmapNode *)pixnode->next;
+ pixnode = pixnode->next;
}
/* Didnt find the pixmap...make a new one */
- (PixmapNode *)pixnew = (void *)malloc(sizeof(PixmapNode));
+ pixnew = (void *)malloc(sizeof(PixmapNode));
XGetWindowAttributes(XtDisplay(w) ,DefaultRootWindow(XtDisplay(w)),&root_att);
orig_att.closeness=65536;
@@ -86,7 +86,7 @@ char directory[MAXPATHLEN];
}
chdir(directory);
}
- (PixmapNode *)pixnode->next = (PixmapNode *)pixnew;
+ pixnode->next = pixnew;
pixnew->filename = filename;
pixnew->next = NULL;
return((Pixmap *)&pixnew->pixmap);
@@ -105,7 +105,7 @@ XpmAttributes orig_att;
char error_buf[BUFSIZ];
char directory[MAXPATHLEN];
- (PixmapNode *)pixnode = (PixmapNode *)PixList.first;
+ pixnode = PixList.first;
for(;;)
{
if(strncmp(filename,pixnode->filename, MAXPATHLEN) == 0)
@@ -114,7 +114,7 @@ char directory[MAXPATHLEN];
break;
}
if(pixnode->next == NULL) break;
- (PixmapNode *)pixnode = (PixmapNode *)pixnode->next;
+ pixnode = pixnode->next;
}
if(found)
{
@@ -140,7 +140,7 @@ char directory[MAXPATHLEN];
}
else
{
- (PixmapNode *)pixnew = (void *)malloc(sizeof(PixmapNode));
+ pixnew = (void *)malloc(sizeof(PixmapNode));
XGetWindowAttributes(XtDisplay(w) ,DefaultRootWindow(XtDisplay(w)),&root_att);
orig_att.closeness=65536;
orig_att.colormap=root_att.colormap;
@@ -159,7 +159,7 @@ char directory[MAXPATHLEN];
}
chdir(directory);
}
- (PixmapNode *)pixnode->next = (PixmapNode *)pixnew;
+ pixnode->next = pixnew;
pixnew->filename = filename;
pixnew->next = NULL;
return((Pixmap *)&pixnew->mask);
@@ -206,9 +206,8 @@ char *soundfile;
sigchld.
*/
new.sa_handler=SigHandle;
- new.sa_mask=0;
- new.sa_flags=SA_NOMASK | SA_ONESHOT;
- new.sa_restorer=NULL;
+ (void) memset(&new.sa_mask, 0, sizeof(new.sa_mask));
+ new.sa_flags=SA_NODEFER;
sigaction(SIGCHLD, &new, &old);
playing = 1;
soundpid = fork();