зеркало из https://github.com/github/ruby.git
prelude.c.tmpl: strip prefix
* template/prelude.c.tmpl (Prelude#translate): strip VPATH prefix from prelude names, so that srcdir diffrences do not make the generated code diffrent. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48490 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
Родитель
56d8b8701d
Коммит
16ba360423
|
@ -1,3 +1,9 @@
|
|||
Wed Nov 19 10:07:57 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
||||
|
||||
* template/prelude.c.tmpl (Prelude#translate): strip VPATH prefix
|
||||
from prelude names, so that srcdir diffrences do not make the
|
||||
generated code diffrent.
|
||||
|
||||
Wed Nov 19 07:45:11 2014 NAKAMURA Usaku <usa@ruby-lang.org>
|
||||
|
||||
* win32/win32.c (rb_w32_write): should set the error of
|
||||
|
|
|
@ -41,7 +41,7 @@ class Prelude
|
|||
idx = @preludes[filename]
|
||||
return idx if idx
|
||||
lines = []
|
||||
result = [@preludes.size, filename, lines, sub]
|
||||
result = [@preludes.size, @vpath.strip(filename), lines, sub]
|
||||
@vpath.foreach(filename) do |line|
|
||||
@preludes[filename] ||= result
|
||||
line.sub!(/(?:^|\s+)\#(?:$|\s.*)/, '')
|
||||
|
|
|
@ -79,4 +79,9 @@ class VPath
|
|||
end
|
||||
@list
|
||||
end
|
||||
|
||||
def strip(path)
|
||||
prefix = list.map {|dir| Regexp.quote(dir)}
|
||||
path.sub(/\A#{prefix.join('|')}(?:\/|\z)/, '')
|
||||
end
|
||||
end
|
||||
|
|
Загрузка…
Ссылка в новой задаче