diff src/console-stream.c @ 771:943eaba38521

[xemacs-hg @ 2002-03-13 08:51:24 by ben] The big ben-mule-21-5 check-in! Various files were added and deleted. See CHANGES-ben-mule. There are still some test suite failures. No crashes, though. Many of the failures have to do with problems in the test suite itself rather than in the actual code. I'll be addressing these in the next day or so -- none of the test suite failures are at all critical. Meanwhile I'll be trying to address the biggest issues -- i.e. build or run failures, which will almost certainly happen on various platforms. All comments should be sent to ben@xemacs.org -- use a Cc: if necessary when sending to mailing lists. There will be pre- and post- tags, something like pre-ben-mule-21-5-merge-in, and post-ben-mule-21-5-merge-in.
author ben
date Wed, 13 Mar 2002 08:54:06 +0000
parents 190b164ddcac
children a5954632b187
line wrap: on
line diff
--- a/src/console-stream.c	Fri Mar 08 13:33:14 2002 +0000
+++ b/src/console-stream.c	Wed Mar 13 08:54:06 2002 +0000
@@ -1,6 +1,6 @@
 /* Stream device functions.
    Copyright (C) 1995 Free Software Foundation, Inc.
-   Copyright (C) 1996 Ben Wing.
+   Copyright (C) 1996, 2001 Ben Wing.
 
 This file is part of XEmacs.
 
@@ -71,7 +71,7 @@
       stream_con->in = stream_con->out = stream_con->err =
 	/* #### We don't currently do coding-system translation on
 	   this descriptor. */
-	fopen ((char *) XSTRING_DATA (tty), READ_PLUS_TEXT);
+	qxe_fopen (XSTRING_DATA (tty), READ_PLUS_TEXT);
       if (!stream_con->in)
 	signal_error (Qio_error, "Unable to open tty", tty);
     }
@@ -109,7 +109,7 @@
 	  fflush (stream_con->out);
 	}
       if (stream_con->in != stdin)
-	fclose (stream_con->in);
+	retry_fclose (stream_con->in);
 
       xfree (stream_con);
       CONSOLE_STREAM_DATA (con) = NULL;
@@ -157,14 +157,16 @@
 
 
 static void
-stream_init_frame_1 (struct frame *f, Lisp_Object props)
+stream_init_frame_1 (struct frame *f, Lisp_Object props,
+		     int frame_name_is_defaulted)
 {
 #if 0
   struct device *d = XDEVICE (FRAME_DEVICE (f));
   if (!NILP (DEVICE_FRAME_LIST (d)))
     invalid_operation ("Only one frame allowed on stream devices", Qunbound);
 #endif
-  f->name = build_string ("stream");
+  if (frame_name_is_defaulted)
+    f->name = build_string ("stream");
   f->height = 80;
   f->width = 24;
   f->visible = 0; /* so redisplay doesn't try to do anything */