@@ -30,7 +30,7 @@ extern "C" {
30
30
#include " v8js_object_export.h"
31
31
#include " v8js_v8object_class.h"
32
32
33
- static void v8js_weak_object_callback (const v8::WeakCallbackData<v8::Object, zval> &data);
33
+ static void v8js_weak_object_callback (const v8::WeakCallbackInfo< zval> &data);
34
34
35
35
/* Callback for PHP methods and functions */
36
36
static void v8js_call_php_func (zval *value, zend_class_entry *ce, zend_function *method_ptr, v8::Isolate *isolate, const v8::FunctionCallbackInfo<v8::Value>& info TSRMLS_DC) /* {{{ */
@@ -252,7 +252,7 @@ static void v8js_construct_callback(const v8::FunctionCallbackInfo<v8::Value>& i
252
252
// decides to dispose the JS object, we add a weak persistent handle and register
253
253
// a callback function that removes the reference.
254
254
ctx->weak_objects [value].Reset (isolate, newobj);
255
- ctx->weak_objects [value].SetWeak (value, v8js_weak_object_callback);
255
+ ctx->weak_objects [value].SetWeak (value, v8js_weak_object_callback, v8::WeakCallbackType:: kParameter );
256
256
257
257
// Just tell v8 that we're allocating some external memory
258
258
// (for the moment we just always tell 1k instead of trying to find out actual values)
@@ -261,7 +261,7 @@ static void v8js_construct_callback(const v8::FunctionCallbackInfo<v8::Value>& i
261
261
/* }}} */
262
262
263
263
264
- static void v8js_weak_object_callback (const v8::WeakCallbackData<v8::Object, zval> &data) {
264
+ static void v8js_weak_object_callback (const v8::WeakCallbackInfo< zval> &data) {
265
265
v8::Isolate *isolate = data.GetIsolate ();
266
266
267
267
zval *value = data.GetParameter ();
@@ -275,7 +275,7 @@ static void v8js_weak_object_callback(const v8::WeakCallbackData<v8::Object, zva
275
275
isolate->AdjustAmountOfExternalAllocatedMemory (-ctx->average_object_size );
276
276
}
277
277
278
- static void v8js_weak_closure_callback (const v8::WeakCallbackData<v8::Object, v8js_tmpl_t > &data) {
278
+ static void v8js_weak_closure_callback (const v8::WeakCallbackInfo< v8js_tmpl_t > &data) {
279
279
v8::Isolate *isolate = data.GetIsolate ();
280
280
281
281
v8js_tmpl_t *persist_tpl_ = data.GetParameter ();
@@ -884,7 +884,7 @@ static v8::Handle<v8::Object> v8js_wrap_object(v8::Isolate *isolate, zend_class_
884
884
if (ce == zend_ce_closure) {
885
885
// free uncached function template when object is freed
886
886
ctx->weak_closures [persist_tpl_].Reset (isolate, newobj);
887
- ctx->weak_closures [persist_tpl_].SetWeak (persist_tpl_, v8js_weak_closure_callback);
887
+ ctx->weak_closures [persist_tpl_].SetWeak (persist_tpl_, v8js_weak_closure_callback, v8::WeakCallbackType:: kParameter );
888
888
}
889
889
890
890
return newobj;
0 commit comments