diff --git a/Makefile.sun4 b/Makefile.sun4
index 95afb179c671314afdfb2cb9fd7c8ed686d5a8d0..03a2dee829a55cd1e0d09c544fade94fae004a8c 100644
--- a/Makefile.sun4
+++ b/Makefile.sun4
@@ -1,4 +1,4 @@
-# $fiHeader: Makefile.sun4,v 1.1 93/03/01 14:26:12 cer Exp $
+# $fiHeader: Makefile.sun4,v 1.2 93/04/02 18:40:42 cer Exp $
 #
 #  Makefile.sun4 for CLIM 2.0
 #
@@ -15,4 +15,7 @@ XTSUPPORTINCLUDES=-I/x11/R5/src/mit/lib/Xt
 # Do we really need this. Why is it referenced?
 MOTIFXTRAOS=/3rd/motif-1.2.1/usr/lib/Motif/Sun/dlsym.o
 
+OLXLIB= /vapor/x11/olit-3.0/lib/libX11.a
+OLXTLIB=/vapor/x11/olit-3.0/lib/libXt.a
+
 include Makefile.generic
diff --git a/Makefile.sun4.motif-1.1.4 b/Makefile.sun4.motif-1.1.4
index 4bc572ff964e75e9560cf80f2de65516b7090047..3003c2b0ae89eb2f740a3c1649cb9a734bc21fbb 100644
--- a/Makefile.sun4.motif-1.1.4
+++ b/Makefile.sun4.motif-1.1.4
@@ -1,4 +1,4 @@
-# $fiHeader: Makefile.sun4,v 1.1 93/03/01 14:26:12 cer Exp $
+# $fiHeader: Makefile.sun4.motif-1.1.4,v 1.1 93/04/02 18:40:44 cer Exp $
 #
 #  Makefile.sun4 for CLIM 2.0
 #
@@ -12,4 +12,7 @@ XTLIB=/x11/R4/sun4-lib/libXt$(DEBUGLIB).a
 XINCLUDES=-I/x11/motif-1.1/lib
 XTSUPPORTINCLUDES=-I/x11/R4/src/mit/lib/Xt
 
+OLXLIB= /vapor/x11/olit-3.0/lib/libX11.a
+OLXTLIB=/vapor/x11/olit-3.0/lib/libXt.a
+
 include Makefile.generic
diff --git a/clim/graphics-recording.lisp b/clim/graphics-recording.lisp
index 4f2a27bd3d61f6deba876fbd2bd0f9897e4daa23..32260c2098438dbdf7c3d1995e89ce33f5788b93 100644
--- a/clim/graphics-recording.lisp
+++ b/clim/graphics-recording.lisp
@@ -1,6 +1,6 @@
 ;;; -*- Mode: Lisp; Syntax: ANSI-Common-Lisp; Package: CLIM-INTERNALS; Base: 10; Lowercase: Yes -*-
 
-;; $fiHeader: graphics-recording.lisp,v 1.20 92/12/16 16:46:29 cer Exp $
+;; $fiHeader: graphics-recording.lisp,v 1.21 93/01/21 14:58:02 cer Exp $
 
 (in-package :clim-internals)
 
@@ -534,6 +534,7 @@
   (let* ((width (stream-string-width (medium-sheet medium) string
  				     :start start :end end
  				     :text-style text-style))
+	 ;;-- Should we just call the string-output-size function here?
  	 (ascent (text-style-ascent text-style medium))
  	 (descent (text-style-descent text-style medium))
  	 (height (+ ascent descent))
diff --git a/clim/interactive-defs.lisp b/clim/interactive-defs.lisp
index 4978a00c0507316ca865ac8f0a25a11c21bc7f71..f8874f5b70feb47ec988c7b983704f82e5e83ec4 100644
--- a/clim/interactive-defs.lisp
+++ b/clim/interactive-defs.lisp
@@ -1,6 +1,6 @@
 ;;; -*- Mode: Lisp; Syntax: ANSI-Common-Lisp; Package: CLIM-INTERNALS; Base: 10; Lowercase: Yes -*-
 
-;; $fiHeader: interactive-defs.lisp,v 1.20 92/11/20 08:44:44 cer Exp $
+;; $fiHeader: interactive-defs.lisp,v 1.21 92/12/03 10:27:10 cer Exp $
 
 (in-package :clim-internals)
 
@@ -228,28 +228,8 @@
     (frame-manager *application-frame*) 
     *application-frame* stream error))
 
-(defmethod frame-manager-display-input-editor-error 
-	   ((framem standard-frame-manager) frame stream error)
-  (declare (ignore frame))
-  ;;--- Resignal the error so the user can handle it
-  ;;--- (in lieu of HANDLER-BIND-DEFAULT)
-  (beep stream)
-  (remove-activation-gesture stream)
-  (with-input-editor-typeout (stream :erase t)
-    (format stream "~A~%Please edit your input." error))
-  ;; Wait until the user forces a rescan by typing an input editing command
-  (loop (read-gesture :stream stream)))
-
-
 (defvar *accept-help* nil)
 
-(defmethod frame-manager-display-help 
-	   (framem frame stream continuation)
-  (declare (dynamic-extent continuation))
-  (declare (ignore framem frame))
-  (with-input-editor-typeout (stream :erase t)	;don't scribble over previous output
-    (funcall continuation stream)))
-
 (defmacro with-input-editor-help (stream &body body)
   `(flet ((with-input-editor-help-body (,stream) ,@body))
      (declare (dynamic-extent #'with-input-editor-help-body))
diff --git a/clim/interactive-protocol.lisp b/clim/interactive-protocol.lisp
index f86e78d423beb000cc59db549abea6e4ae9f28f1..89c2c601b6b085d51b60041c810da4342d3f5aa1 100644
--- a/clim/interactive-protocol.lisp
+++ b/clim/interactive-protocol.lisp
@@ -1,6 +1,6 @@
 ;;; -*- Mode: Lisp; Syntax: ANSI-Common-Lisp; Package: CLIM-INTERNALS; Base: 10; Lowercase: Yes -*-
 
-;; $fiHeader: interactive-protocol.lisp,v 1.22 92/12/03 10:27:13 cer Exp $
+;; $fiHeader: interactive-protocol.lisp,v 1.23 92/12/16 16:46:40 cer Exp $
 
 (in-package :clim-internals)
 
@@ -996,3 +996,29 @@
       ((:error) (error "Replace-input while rescanning"))))
   (replace-input stream (string string) :start begin :end end
 		 :buffer-start location :rescan nil))
+
+
+
+
+(defmethod frame-manager-display-input-editor-error 
+	   ((framem standard-frame-manager) frame (stream standard-input-editing-stream) error)
+  ;;--- Resignal the error so the user can handle it
+  ;;--- (in lieu of HANDLER-BIND-DEFAULT)
+  (if (typep (encapsulating-stream-stream stream) 'accept-values-pane)
+      (notify-user frame (princ-to-string error)
+		   :title "Input error"
+		   :style :error :exit-boxes '(:exit))
+    (progn
+      (beep stream)
+      (with-input-editor-typeout (stream :erase t)
+	(format stream "~A~%Please edit your input." error))))
+  (remove-activation-gesture stream)
+  ;; Wait until the user forces a rescan by typing an input editing command
+  (loop (read-gesture :stream stream)))
+
+(defmethod frame-manager-display-help 
+	   (framem frame (stream standard-input-editing-stream) continuation)
+  (declare (dynamic-extent continuation))
+  (declare (ignore framem frame))
+  (with-input-editor-typeout (stream :erase t)	;don't scribble over previous output
+    (funcall continuation stream)))
diff --git a/clim/recording-protocol.lisp b/clim/recording-protocol.lisp
index 9e9930a60f94a341246d0377efb8745fdf1a4918..f55755f424c21890203ab4bc0ed7986195399bd7 100644
--- a/clim/recording-protocol.lisp
+++ b/clim/recording-protocol.lisp
@@ -1,6 +1,6 @@
 ;;; -*- Mode: Lisp; Syntax: ANSI-Common-Lisp; Package: CLIM-INTERNALS; Base: 10; Lowercase: Yes -*-
 
-;; $fiHeader: recording-protocol.lisp,v 1.30 93/03/19 09:43:45 cer Exp $
+;; $fiHeader: recording-protocol.lisp,v 1.31 93/03/31 10:38:48 cer Exp $
 
 (in-package :clim-internals)
 
@@ -548,9 +548,9 @@
   (with-keywords-removed (initargs initargs '(:parent))
     (let* ((current-output-record (stream-current-output-record stream))
 	   (new-output-record (and (stream-redisplaying-p stream)
-				   current-output-record
+				   (or parent current-output-record)
 				   (apply #'find-child-output-record
-					  current-output-record t record-type initargs))))
+					  (or parent current-output-record) t record-type initargs))))
       (multiple-value-bind (cursor-x cursor-y)
 	  (stream-cursor-position stream)
 	(declare (type coordinate cursor-x cursor-y))
diff --git a/hpgl/hpgl-port.lisp b/hpgl/hpgl-port.lisp
index fb4225c097558fc4f52df9b51d47a7aff763a3b2..b8cf131482a3c72b4d680a89da1d34d7b6f2d4fa 100644
--- a/hpgl/hpgl-port.lisp
+++ b/hpgl/hpgl-port.lisp
@@ -1,6 +1,6 @@
 ;;; -*- Mode: Lisp; Syntax: ANSI-Common-Lisp; Package: hpgl-clim; Base: 10; Lowercase: Yes -*-
 
-;;; $fiHeader: hpgl-port.lisp,v 1.1 93/03/04 08:57:28 cer Exp $
+;;; $fiHeader: hpgl-port.lisp,v 1.2 93/04/02 13:36:19 cer Exp $
 
 "Copyright (c) 1991 by International Lisp Associates.  All rights reserved."
 "Portions copyright (c) 1992 Franz Inc. All rights reserved"
@@ -251,7 +251,9 @@
 
 (defmethod initialize-instance :after ((port hpgl-port) &key device-type)
   (setf (port-hpi port) (find-hp-ploter-description device-type))
-  (initialize-hpgl-display-device port))
+  (initialize-hpgl-display-device port)
+  (with-slots (silica::default-palette) port
+    (setf silica::default-palette (make-palette port))))
 
 (defmethod make-medium ((port hpgl-port) sheet)
   (make-instance 'hpgl-medium
@@ -271,10 +273,6 @@
     :color-p t
     :dynamic-p nil))
 
-(defmethod initialize-instance :after ((port hpgl-port) &key)
-  (with-slots (silica::default-palette) port
-    (setf silica::default-palette (make-palette port))))
-
 
 (defmethod realize-graft ((port hpgl-port) (graft standard-graft))
   (with-slots (silica::mm-height silica::mm-width
diff --git a/tk/xlib.lisp b/tk/xlib.lisp
index ec5ebebc22c746847969361bb41ba9e25508a794..487c7f61b97b2eb4123d7c9d25f17a6765d19a33 100644
--- a/tk/xlib.lisp
+++ b/tk/xlib.lisp
@@ -20,7 +20,7 @@
 ;; 52.227-19 or DOD FAR Supplement 252.227-7013 (c) (1) (ii), as
 ;; applicable.
 ;;
-;; $fiHeader: xlib.lisp,v 1.41 93/03/18 14:38:50 colin Exp $
+;; $fiHeader: xlib.lisp,v 1.42 93/04/02 13:37:10 cer Exp $
 
 (in-package :tk)
 
@@ -625,7 +625,7 @@
 		    (excl::malloc 256))))
     (declare (type (unsigned-byte 32) buffer))
     (with-ref-par ((keysym 0))
-      (let* ((nchars (x11:xlookupstring event buffer 256 keysym compose-struct))
+      (let* ((nchars (x11:xlookupstring event buffer 256 keysym compose-status))
 	     (result (make-string nchars)))
 	(declare (fixnum nchars)
 		 (simple-string result))