# HG changeset patch # User Thinker K.F. Li # Date 1302073989 -28800 # Node ID f34d2fcbcd0de3833d5e017232230be8adb2a6d0 # Parent 036f2b447860b2d7b640dae99810013ce311dba0 Revert changeset #88c8c874f4b8. #88c8c874f4b8 try to fix crashing, but it blame to wrong code. If you look into runtime stack of xnjsmb_coord_remove(), you will find self argument is already wrong. It is in an invalid address. diff -r 036f2b447860 -r f34d2fcbcd0d nodejs/coord.cc --- a/nodejs/coord.cc Wed Apr 06 14:37:34 2011 +0800 +++ b/nodejs/coord.cc Wed Apr 06 15:13:09 2011 +0800 @@ -81,7 +81,6 @@ FOR_COORDS_PREORDER(coord, child) { child_hdl = (Persistent *)mb_prop_get(&child->obj.props, PROP_JSOBJ); - if (child_hdl == NULL) continue; SET(*child_hdl, "valid", _false); WRAP(*child_hdl, NULL); child_hdl->Dispose(); @@ -91,7 +90,6 @@ FOR_COORD_SHAPES(child, mem) { mem_hdl = (Persistent *)mb_prop_get(&mem->obj.props, PROP_JSOBJ); - if (mem_hdl == NULL) continue; SET(*mem_hdl, "valid", _false); WRAP(*mem_hdl, NULL); mem_hdl->Dispose();