[前][次][番号順一覧][スレッド一覧]

ruby-changes:33518

From: nobu <ko1@a...>
Date: Wed, 16 Apr 2014 17:46:37 +0900 (JST)
Subject: [ruby-changes:33518] nobu:r45599 (trunk): ruby.c: remove mangled_path

nobu	2014-04-16 17:46:31 +0900 (Wed, 16 Apr 2014)

  New Revision: 45599

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=45599

  Log:
    ruby.c: remove mangled_path
    
    * ruby.c (rubylib_mangled_path): remove obsolete code, which has
      been disabled since 5 years ago.
    
    * man/ruby.1 (ENVIRONMENT): delete an obsolete variable to mangle
      path, RUBYLIB_PREFIX.

  Modified files:
    trunk/man/ruby.1
    trunk/ruby.c
Index: man/ruby.1
===================================================================
--- man/ruby.1	(revision 45598)
+++ man/ruby.1	(revision 45599)
@@ -432,7 +432,7 @@ after printing its version. https://github.com/ruby/ruby/blob/trunk/man/ruby.1#L432
 .El
 .Pp
 .Sh ENVIRONMENT
-.Bl -tag -width "RUBYLIB_PREFIX" -compact
+.Bl -tag -width "RUBYSHELL" -compact
 .It Ev RUBYLIB
 A colon-separated list of directories that are added to Ruby's
 library load path
@@ -472,9 +472,6 @@ variable is not defined, Ruby refers to https://github.com/ruby/ruby/blob/trunk/man/ruby.1#L472
 Ruby refers to the
 .Ev PATH
 environment variable on calling Kernel#system.
-.Pp
-.It Ev RUBYLIB_PREFIX
-This variable is obsolete.
 .El
 .Pp
 And Ruby depends on some RubyGems related environment variables unless RubyGems is disabled.
Index: ruby.c
===================================================================
--- ruby.c	(revision 45598)
+++ ruby.c	(revision 45599)
@@ -207,49 +207,7 @@ usage(const char *name, int help) https://github.com/ruby/ruby/blob/trunk/ruby.c#L207
 	SHOW(features[i]);
 }
 
-#ifdef MANGLED_PATH
-static VALUE
-rubylib_mangled_path(const char *s, unsigned int l)
-{
-    static char *newp, *oldp;
-    static int newl, oldl, notfound;
-    char *ptr;
-    VALUE ret;
-
-    if (!newp && !notfound) {
-	newp = getenv("RUBYLIB_PREFIX");
-	if (newp) {
-	    oldp = newp = strdup(newp);
-	    while (*newp && !ISSPACE(*newp) && *newp != ';') {
-		newp = CharNext(newp);	/* Skip digits. */
-	    }
-	    oldl = newp - oldp;
-	    while (*newp && (ISSPACE(*newp) || *newp == ';')) {
-		newp = CharNext(newp);	/* Skip whitespace. */
-	    }
-	    newl = strlen(newp);
-	    if (newl == 0 || oldl == 0) {
-		rb_fatal("malformed RUBYLIB_PREFIX");
-	    }
-	    translit_char(newp, '\\', '/');
-	}
-	else {
-	    notfound = 1;
-	}
-    }
-    if (!newp || l < oldl || STRNCASECMP(oldp, s, oldl) != 0) {
-	return rb_str_new(s, l);
-    }
-    ret = rb_str_new(0, l + newl - oldl);
-    ptr = RSTRING_PTR(ret);
-    memcpy(ptr, newp, newl);
-    memcpy(ptr + newl, s + oldl, l - oldl);
-    ptr[l + newl - oldl] = 0;
-    return ret;
-}
-#else
-#define rubylib_mangled_path rb_str_new
-#endif
+#define rubylib_path_new rb_str_new
 
 static void
 push_include(const char *path, VALUE (*filter)(VALUE))
@@ -264,7 +222,7 @@ push_include(const char *path, VALUE (*f https://github.com/ruby/ruby/blob/trunk/ruby.c#L222
 	    p++;
 	if (!*p) break;
 	for (s = p; *s && *s != sep; s = CharNext(s));
-	rb_ary_push(load_path, (*filter)(rubylib_mangled_path(p, s - p)));
+	rb_ary_push(load_path, (*filter)(rubylib_path_new(p, s - p)));
 	p = s;
     }
 }
@@ -510,15 +468,12 @@ ruby_init_loadpath_safe(int safe_level) https://github.com/ruby/ruby/blob/trunk/ruby.c#L468
 #else
     extern const char ruby_exec_prefix[];
     const size_t exec_prefix_len = strlen(ruby_exec_prefix);
-#define RUBY_RELATIVE(path, len) rubylib_mangled_path((path), (len))
+#define RUBY_RELATIVE(path, len) rubylib_path_new((path), (len))
 #define PREFIX_PATH() RUBY_RELATIVE(ruby_exec_prefix, exec_prefix_len)
 #endif
     load_path = GET_VM()->load_path;
 
     if (safe_level == 0) {
-#ifdef MANGLED_PATH
-	rubylib_mangled_path("", 0);
-#endif
 	ruby_push_include(getenv("RUBYLIB"), identical_path);
     }
 

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]