33 lines
1 KiB
Text
33 lines
1 KiB
Text
--- run.c.orig Fri May 11 00:08:14 2001
|
|
+++ run.c Fri May 11 00:07:26 2001
|
|
@@ -30,6 +30,9 @@
|
|
char *tcp, *tcp1; /* temporary character pointers */
|
|
char *tmp;
|
|
int ch;
|
|
+#ifdef __FreeBSD__
|
|
+ int tmpid; /* FreeBSD uses mkstemp instead of mktemp */
|
|
+#endif
|
|
extern BOOLEAN epsf;
|
|
|
|
for (argind = 1; argind < argc; argind++) {
|
|
@@ -206,11 +209,20 @@
|
|
((tmp = getenv("TEMP")) == NULL))
|
|
tmp = TMP;
|
|
(void)strcpy(dvifilename, tmp);
|
|
+#ifdef __FreeBSD__
|
|
+ (void)strcat(dvifilename, DVITEMPLATE);
|
|
+ (void)strcat(dvifilename,".dvi");
|
|
+ if((tmpid = mkstemps (dvifilename, 4)) == -1)
|
|
+ Fatal("can't create DVI file for stdin");
|
|
+ dvifp = fdopen(tmpid, "w+");
|
|
+#else
|
|
+
|
|
(void)mktemp(strcat(dvifilename, DVITEMPLATE));
|
|
(void)strcpy(rootname, dvifilename); /* not used now */
|
|
(void)strcat(dvifilename, ".dvi");
|
|
if ((dvifp = BINARYWOPEN(dvifilename)) == NULL)
|
|
Fatal("can't create DVI file for stdin");
|
|
+#endif
|
|
stdindvi = TRUE;
|
|
#if !defined(MSDOS) && !defined(WIN32)
|
|
(void)signal(SIGHUP, sigabort);
|