changeset 5504:d3e0482c7899

Move #'split-path to subr.el, as was always the intention. src/ChangeLog addition: 2011-05-07 Aidan Kehoe <kehoea@parhasard.net> * fns.c (Fsplit_path): Removed. * fns.c (syms_of_fns): Move #'split-path to subr.el, as was always the intention. lisp/ChangeLog addition: 2011-05-07 Aidan Kehoe <kehoea@parhasard.net> * subr.el: * subr.el (split-path): New. Moved here from fns.c. There's no need to have this in C, it's no longer used that early at startup.
author Aidan Kehoe <kehoea@parhasard.net>
date Sat, 07 May 2011 16:57:17 +0100
parents 7b5946dbfb96
children 3b220aa03f89
files lisp/ChangeLog lisp/subr.el src/ChangeLog src/fns.c
diffstat 4 files changed, 27 insertions(+), 37 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/ChangeLog	Sat May 07 12:26:39 2011 +0100
+++ b/lisp/ChangeLog	Sat May 07 16:57:17 2011 +0100
@@ -1,3 +1,10 @@
+2011-05-07  Aidan Kehoe  <kehoea@parhasard.net>
+
+	* subr.el:
+	* subr.el (split-path): New.
+	Moved here from fns.c. There's no need to have this in C, it's no
+	longer used that early at startup.
+
 2011-05-07  Aidan Kehoe  <kehoea@parhasard.net>
 
 	* bytecomp.el:
--- a/lisp/subr.el	Sat May 07 12:26:39 2011 +0100
+++ b/lisp/subr.el	Sat May 07 16:57:17 2011 +0100
@@ -505,18 +505,20 @@
 
 ;; BEGIN SYNCHED WITH FSF 21.2
 
-;; #### #### #### AAaargh!  Must be in C, because it is used insanely
-;; early in the bootstrap process.
-;(defun split-path (path)
+(defun split-path (path)
+  "Explode a search path into a list of strings.
+The path components are separated with the characters specified
+with `path-separator'."
+  (while (or (not (stringp path-separator))
+             (/= (length path-separator) 1))
+    (setq path-separator (signal 'error (list "\
+`path-separator' should be set to a single-character string"
+					      path-separator))))
+  (split-string-by-char path (aref path-separator 0)))
+
 ;  "Explode a search path into a list of strings.
 ;The path components are separated with the characters specified
 ;with `path-separator'."
-;  (while (or (not stringp path-separator)
-;	     (/= (length path-separator) 1))
-;    (setq path-separator (signal 'error (list "\
-;`path-separator' should be set to a single-character string"
-;					      path-separator))))
-;  (split-string-by-char path (aref separator 0)))
 
 (defmacro with-current-buffer (buffer &rest body)
   "Temporarily make BUFFER the current buffer and execute the forms in BODY.
--- a/src/ChangeLog	Sat May 07 12:26:39 2011 +0100
+++ b/src/ChangeLog	Sat May 07 16:57:17 2011 +0100
@@ -1,3 +1,9 @@
+2011-05-07  Aidan Kehoe  <kehoea@parhasard.net>
+
+	* fns.c (Fsplit_path): Removed.
+	* fns.c (syms_of_fns):
+	Move #'split-path to subr.el, as was always the intention.
+
 2011-05-03  Stephen J. Turnbull  <stephen@xemacs.org>
 
 	* dumper.c (pdump_file_try): Remove static qualifier.
--- a/src/fns.c	Sat May 07 12:26:39 2011 +0100
+++ b/src/fns.c	Sat May 07 16:57:17 2011 +0100
@@ -2260,8 +2260,9 @@
   return split_string_by_ichar_1 (path, qxestrlen (path), SEPCHAR, 0, 0);
 }
 
-/* Ben thinks this function should not exist or be exported to Lisp.
-   We use it to define split-path-string in subr.el (not!).  */
+/* Ben thinks [or thought in 1998] this function should not exist or be
+   exported to Lisp. It's used to define #'split-path in subr.el, and for
+   parsing Carbon font names under that window system. */
 
 DEFUN ("split-string-by-char", Fsplit_string_by_char, 2, 3, 0, /*
 Split STRING into a list of substrings originally separated by SEPCHAR.
@@ -2286,31 +2287,6 @@
                                   XCHAR (sepchar),
                                   !NILP (escape_char), escape_ichar);
 }
-
-/* #### This was supposed to be in subr.el, but is used VERY early in
-   the bootstrap process, so it goes here.  Damn.  */
-
-DEFUN ("split-path", Fsplit_path, 1, 1, 0, /*
-Explode a search path into a list of strings.
-The path components are separated with the characters specified
-with `path-separator'.
-*/
-       (path))
-{
-  CHECK_STRING (path);
-
-  while (!STRINGP (Vpath_separator)
-	 || (string_char_length (Vpath_separator) != 1))
-    Vpath_separator = signal_continuable_error
-      (Qinvalid_state,
-       "`path-separator' should be set to a single-character string",
-       Vpath_separator);
-
-  return (split_string_by_ichar_1
-	  (XSTRING_DATA (path), XSTRING_LENGTH (path),
-	   itext_ichar (XSTRING_DATA (Vpath_separator)), 0, 0));
-}
-
 
 DEFUN ("nthcdr", Fnthcdr, 2, 2, 0, /*
 Take cdr N times on LIST, and return the result.
@@ -11955,7 +11931,6 @@
 
   DEFSUBR (Fsubstring_no_properties);
   DEFSUBR (Fsplit_string_by_char);
-  DEFSUBR (Fsplit_path);	/* #### */
 }
 
 void