php_vm 1.0.3 → 1.0.4
Sign up to get free protection for your applications and to get access to all the features.
- data/ext/php_vm/php_vm.c +4 -3
- data/ext/php_vm/php_vm_v2z.c +4 -5
- metadata +2 -2
data/ext/php_vm/php_vm.c
CHANGED
@@ -315,7 +315,7 @@ zend_class_entry* get_zend_class_entry(VALUE self)
|
|
315
315
|
}
|
316
316
|
|
317
317
|
PHPNativeResource *p;
|
318
|
-
Data_Get_Struct(
|
318
|
+
Data_Get_Struct(resource, PHPNativeResource, p);
|
319
319
|
if (p) {
|
320
320
|
return p->ce;
|
321
321
|
}
|
@@ -330,7 +330,7 @@ zval* get_zval(VALUE self)
|
|
330
330
|
}
|
331
331
|
|
332
332
|
PHPNativeResource *p;
|
333
|
-
Data_Get_Struct(
|
333
|
+
Data_Get_Struct(resource, PHPNativeResource, p);
|
334
334
|
if (p) {
|
335
335
|
return p->zobj;
|
336
336
|
}
|
@@ -421,6 +421,7 @@ VALUE rb_php_class_initialize(VALUE self, VALUE v_name)
|
|
421
421
|
// set resource
|
422
422
|
PHPNativeResource *p = ALLOC(PHPNativeResource);
|
423
423
|
p->ce = *ce;
|
424
|
+
p->zobj = NULL;
|
424
425
|
VALUE resource = Data_Wrap_Struct(CLASS_OF(self), 0, php_native_resource_delete, p);
|
425
426
|
rb_iv_set(self, "php_native_resource", resource);
|
426
427
|
|
@@ -538,7 +539,7 @@ void Init_php_vm()
|
|
538
539
|
rb_define_singleton_method(rb_mPHPVM, "exec", rb_php_vm_exec, 1);
|
539
540
|
rb_define_singleton_method(rb_mPHPVM, "getClass", rb_php_vm_getClass, 1);
|
540
541
|
|
541
|
-
rb_define_const(rb_mPHPVM, "VERSION", rb_str_new2("1.0.
|
542
|
+
rb_define_const(rb_mPHPVM, "VERSION", rb_str_new2("1.0.4"));
|
542
543
|
|
543
544
|
// class PHPVM::PHPClass
|
544
545
|
rb_cPHPClass = rb_define_class_under(rb_mPHPVM, "PHPClass", rb_cObject);
|
data/ext/php_vm/php_vm_v2z.c
CHANGED
@@ -76,11 +76,10 @@ void value_to_zval(VALUE v, zval *z)
|
|
76
76
|
break;
|
77
77
|
// object string
|
78
78
|
default:{
|
79
|
-
|
80
|
-
if (
|
81
|
-
//
|
82
|
-
|
83
|
-
z = get_zval(v);
|
79
|
+
zval *resource_zobj = get_zval(v);
|
80
|
+
if (resource_zobj) {
|
81
|
+
// php native resource
|
82
|
+
*z = *resource_zobj;
|
84
83
|
} else {
|
85
84
|
// other to_s
|
86
85
|
v = rb_obj_as_string(v);
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: php_vm
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.4
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-12-
|
12
|
+
date: 2012-12-24 00:00:00.000000000 Z
|
13
13
|
dependencies: []
|
14
14
|
description: php_vm is a native bridge between Ruby and PHP.
|
15
15
|
email:
|