1
0
Fork 0
mirror of https://github.com/rubyjs/therubyracer synced 2023-03-27 23:21:42 -04:00

syntax fix for 1.8.6 which doesn't allow for passing blocks to blocks.

This commit is contained in:
Charles Lowell 2010-08-06 11:17:17 -05:00
parent 82bcbbb62c
commit 3324dfb9eb

View file

@ -111,9 +111,10 @@ module V8
obj = To.rb(info.This())
intercepts = true
result = Function.rubyprotect do
code.call(obj) do
dontintercept = proc do
intercepts = false
end
code.call(obj, dontintercept)
end
intercepts ? (retval || result) : C::Empty
end
@ -122,7 +123,7 @@ module V8
class NamedPropertyGetter
extend AccessibleMethods
def self.call(property, info)
access(info) do |obj, &dontintercept|
access(info) do |obj, dontintercept|
access_get(obj, To.rb(property), &dontintercept)
end
end
@ -143,7 +144,7 @@ module V8
class NamedPropertySetter
extend AccessibleMethods
def self.call(property, value, info)
access(info, value) do |obj, &dontintercept|
access(info, value) do |obj, dontintercept|
access_set(obj, To.rb(property), To.rb(value), &dontintercept)
end
end
@ -177,7 +178,7 @@ module V8
class IndexedPropertyGetter
extend AccessibleMethods
def self.call(index, info)
access(info) do |obj, &dontintercept|
access(info) do |obj, dontintercept|
access_iget(obj, index, &dontintercept)
end
end
@ -194,7 +195,7 @@ module V8
class IndexedPropertySetter
extend AccessibleMethods
def self.call(index, value, info)
access(info, value) do |obj, &dontintercept|
access(info, value) do |obj, dontintercept|
access_iset(obj, index, To.rb(value), &dontintercept)
end
end