--- source/file.c.~1~	Thu Mar 19 13:20:22 1998
+++ source/file.c	Wed Jul 15 18:01:16 1998
@@ -875,16 +875,18 @@
 void PrintString(char *string, int length, Widget parent, char *jobName)
 {
     char tmpFileName[L_tmpnam];    /* L_tmpnam defined in stdio.h */
+    int  fd;
     FILE *fp;
 
-    /* Generate a temporary file name */
-    tmpnam(tmpFileName);
-
     /* open the temporary file */
 #ifdef VMS
+    tmpnam(tmpFileName);
     if ((fp = fopen(tmpFileName, "w", "rfm = stmlf")) == NULL) {
 #else
-    if ((fp = fopen(tmpFileName, "w")) == NULL) {
+    strcpy( tmpFileName, "/var/tmp/nedit-XXXXXXXXXX" );
+    fd = mkstemp( tmpFileName );
+    if (( fd == -1 ) ||
+	((fp = fdopen(fd, "w")) == NULL)) {
 #endif /* VMS */
     	DialogF(DF_WARN, parent, 1, "Unable to write file for printing:\n%s",
 		"Dismiss", errorString());
