openbsd-ports/print/ghostview/patches/patch-SelFile_c
espie 220c8232ff brute-force fixing of ghostview for sparc64: add prototypes everywhere,
and don't pass abuse-cast int to XtPointer.

pval@ says it works.
2002-04-26 01:44:08 +00:00

122 lines
3.4 KiB
Plaintext

$OpenBSD: patch-SelFile_c,v 1.1 2002/04/26 01:44:08 espie Exp $
--- SelFile.c.orig Sat Jul 24 04:29:12 1993
+++ SelFile.c Fri Apr 26 02:40:34 2002
@@ -46,7 +46,6 @@
/* BSD 4.3 errno.h does not declare errno */
extern int errno;
extern int sys_nerr;
-extern char *sys_errlist[];
#include <sys/param.h>
#include <X11/cursorfont.h>
@@ -61,6 +60,7 @@ extern char *sys_errlist[];
#include <X11/Xaw/Cardinals.h>
#include "SFinternal.h"
+#include "gv.h"
#ifndef MAXPATHLEN
#define MAXPATHLEN 1024
@@ -127,6 +127,11 @@ char SFtextBuffer[MAXPATHLEN];
XtIntervalId SFdirModTimerId;
+void SFpositionWidget(Widget);
+FILE *SFopenFile(char *, char *, char *, char *);
+FILE *XsraSelFile(Widget, char *, char *, char *, char *, char *, char *,
+ int (*)(), char **);
+
int (*SFfunc)();
static char *oneLineTextEditTranslations = "\
@@ -146,7 +151,7 @@ SFexposeList(w, n, event, cont)
return;
}
- SFdrawList(n, SF_DO_NOT_SCROLL);
+ SFdrawList(*((int *)n), SF_DO_NOT_SCROLL);
}
/* ARGSUSED */
@@ -407,7 +412,10 @@ SFcreateWidgets(toplevel, prompt, ok, ca
compositeWidgetClass, selFileForm, arglist, i);
for (n = 0; n < 3; n++) {
+ int *box;
+ box = XtNew(int);
+ *box = n;
i = 0;
XtSetArg(arglist[i], XtNx, vScrollX); i++;
XtSetArg(arglist[i], XtNy, vScrollY); i++;
@@ -418,9 +426,9 @@ SFcreateWidgets(toplevel, prompt, ok, ca
scrollbarWidgetClass, selFileLists[n], arglist, i);
XtAddCallback(selFileVScrolls[n], XtNjumpProc,
- SFvFloatSliderMovedCallback, (XtPointer) n);
+ SFvFloatSliderMovedCallback, (XtPointer) box);
XtAddCallback(selFileVScrolls[n], XtNscrollProc,
- SFvAreaSelectedCallback, (XtPointer) n);
+ SFvAreaSelectedCallback, (XtPointer) box);
i = 0;
@@ -435,9 +443,9 @@ SFcreateWidgets(toplevel, prompt, ok, ca
scrollbarWidgetClass, selFileLists[n], arglist, i);
XtAddCallback(selFileHScrolls[n], XtNjumpProc,
- SFhSliderMovedCallback, (XtPointer) n);
+ SFhSliderMovedCallback, (XtPointer) box);
XtAddCallback(selFileHScrolls[n], XtNscrollProc,
- SFhAreaSelectedCallback, (XtPointer) n);
+ SFhAreaSelectedCallback, (XtPointer) box);
}
i = 0;
@@ -495,18 +503,22 @@ SFcreateWidgets(toplevel, prompt, ok, ca
XDefineCursor(SFdisplay, XtWindow(selFileCancel), dotCursor);
for (n = 0; n < 3; n++) {
+ int *box;
+
+ box = XtNew(int);
+ *box = n;
XtAddEventHandler(selFileLists[n], ExposureMask, True,
- SFexposeList, (XtPointer) n);
+ SFexposeList, (XtPointer) box);
XtAddEventHandler(selFileLists[n], EnterWindowMask, False,
- SFenterList, (XtPointer) n);
+ SFenterList, (XtPointer) box);
XtAddEventHandler(selFileLists[n], LeaveWindowMask, False,
- SFleaveList, (XtPointer) n);
+ SFleaveList, (XtPointer) box);
XtAddEventHandler(selFileLists[n], PointerMotionMask, False,
- SFmotionList, (XtPointer) n);
+ SFmotionList, (XtPointer) box);
XtAddEventHandler(selFileLists[n], ButtonPressMask, False,
- SFbuttonPressList, (XtPointer) n);
+ SFbuttonPressList, (XtPointer) box);
XtAddEventHandler(selFileLists[n], ButtonReleaseMask, False,
- SFbuttonReleaseList, (XtPointer) n);
+ SFbuttonReleaseList, (XtPointer) box);
}
XtAddEventHandler(selFileField, KeyPressMask, False,
@@ -588,6 +600,7 @@ SFopenFile(name, mode, prompt, failed)
return fp;
}
+void
SFtextChanged()
{
@@ -617,7 +630,7 @@ SFgetText()
SFtextBuffer);
}
-static
+static void
SFprepareToReturn()
{
SFstatus = SEL_FILE_NULL;