Index: trunk/Ohana/src/opihi/cmd.basic/output.c
===================================================================
--- trunk/Ohana/src/opihi/cmd.basic/output.c	(revision 7938)
+++ trunk/Ohana/src/opihi/cmd.basic/output.c	(revision 9039)
@@ -1,5 +1,3 @@
 # include "basic.h"
-
-static FILE *outfile;
 
 int output (int argc, char **argv) {
@@ -8,5 +6,5 @@
   gpDest dest;
   IOBuffer *buffer;
-  char *output;
+  char *output, *current;
 
   dest = GP_LOG;
@@ -14,4 +12,12 @@
     dest = GP_ERR;
     remove_argument (N, &argc, argv);
+  }
+
+  if ((N = get_argument (argc, argv, "-current"))) {
+    current = gprintGetName (dest);
+    remove_argument (N, &argc, argv);
+    set_str_variable (argv[N], current);
+    remove_argument (N, &argc, argv);
+    return (TRUE);
   }
 
@@ -42,5 +48,5 @@
     
   if (argc != 2) {
-    gprint (GP_ERR, "USAGE: output <filename> [-err] [-buffer] [-dump filename]\n");
+    gprint (GP_ERR, "USAGE: output <filename> [-err] [-buffer] [-current var] [-dump filename]\n");
     return (FALSE);
   }
@@ -49,10 +55,2 @@
   return (TRUE);
 }
-
-FILE *GetOutfile () {
-  return (outfile);
-}
-
-void InitOutfile () {
-  outfile = stdout;
-}
