diff src/editfns.c @ 404:2f8bb876ab1d r21-2-32

Import from CVS: tag r21-2-32
author cvs
date Mon, 13 Aug 2007 11:16:07 +0200
parents a86b2b5e0111
children de805c49cfc1
line wrap: on
line diff
--- a/src/editfns.c	Mon Aug 13 11:15:00 2007 +0200
+++ b/src/editfns.c	Mon Aug 13 11:16:07 2007 +0200
@@ -822,10 +822,18 @@
 				   of a few bytes */
 }
 
+/* !!#### not Mule correct. */
+
 /* Returns the home directory, in external format */
 Extbyte *
 get_home_directory (void)
 {
+  /* !!#### this is hopelessly bogus.  Rule #1: Do not make any assumptions
+     about what format an external string is in.  Could be Unicode, for all
+     we know, and then all the operations below are totally bogus.
+     Instead, convert all data to internal format *right* at the juncture
+     between XEmacs and the outside world, the very moment we first get
+     the data.  --ben */
   int output_home_warning = 0;
 
   if (cached_home_directory == NULL)
@@ -847,7 +855,9 @@
 	    }
 	  else
 	    {
-# if 1
+# if 0 /* changed by ben.  This behavior absolutely stinks, and the
+	  possibility being addressed here occurs quite commonly.
+	  Using the current directory makes absolutely no sense. */
 	      /*
 	       * Use the current directory.
 	       * This preserves the existing XEmacs behavior, but is different