jbarnette-johnson 1.0.0.20090402144841 → 1.0.0.20090402155420
Sign up to get free protection for your applications and to get access to all the features.
- data/ext/spidermonkey/ruby_land_proxy.c +11 -10
- data/johnson.gemspec +1 -1
- metadata +1 -1
@@ -185,27 +185,28 @@ respond_to_p(int argc, const VALUE* argv, VALUE self)
|
|
185
185
|
static VALUE
|
186
186
|
native_call(int argc, VALUE* argv, VALUE self)
|
187
187
|
{
|
188
|
-
// FIXME: This should really call super#native_call.
|
189
188
|
if (!function_p(self))
|
190
|
-
rb_raise(rb_eRuntimeError,
|
189
|
+
rb_raise(rb_eRuntimeError,
|
190
|
+
"This Johnson::SpiderMonkey::RubyLandProxy isn't a function.");
|
191
191
|
|
192
192
|
if (argc < 1)
|
193
193
|
rb_raise(rb_eArgError, "Target object required");
|
194
194
|
|
195
195
|
RubyLandProxy* proxy;
|
196
196
|
Data_Get_Struct(self, RubyLandProxy, proxy);
|
197
|
-
|
198
|
-
|
199
|
-
PREPARE_RUBY_JROOTS(context, 1);
|
200
|
-
|
197
|
+
|
201
198
|
jsval proxy_value;
|
202
|
-
|
203
|
-
|
199
|
+
|
200
|
+
if (!get_jsval_for_proxy(proxy, &proxy_value))
|
201
|
+
raise_js_error_in_ruby(proxy->runtime);
|
204
202
|
|
205
203
|
jsval global;
|
206
|
-
JCHECK(convert_to_js(proxy->runtime, argv[0], &global));
|
207
204
|
|
208
|
-
|
205
|
+
if (!convert_to_js(proxy->runtime, argv[0], &global))
|
206
|
+
raise_js_error_in_ruby(proxy->runtime);
|
207
|
+
|
208
|
+
return call_js_function_value(proxy->runtime, global, proxy_value,
|
209
|
+
argc - 1, &(argv[1]));
|
209
210
|
}
|
210
211
|
|
211
212
|
static void
|
data/johnson.gemspec
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |s|
|
4
4
|
s.name = %q{johnson}
|
5
|
-
s.version = "1.0.0.
|
5
|
+
s.version = "1.0.0.20090402155420"
|
6
6
|
|
7
7
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
8
8
|
s.authors = ["John Barnette", "Aaron Patterson", "Yehuda Katz", "Matthew Draper"]
|