--- JSON-XS/typemap 2007/07/02 07:39:31 1.1 +++ JSON-XS/typemap 2007/11/28 13:57:15 1.3 @@ -3,8 +3,13 @@ INPUT T_JSON - if (!(SvROK ($arg) && SvOBJECT (SvRV ($arg)) && SvSTASH (SvRV ($arg)) == json_stash)) + if (!( + SvROK ($arg) + && SvOBJECT (SvRV ($arg)) + && (SvSTASH (SvRV ($arg)) == JSON_STASH || sv_derived_from ($arg, \"JSON::XS\")) + )) croak (\"object is not of type JSON::XS\"); + /**/ $var = (JSON *)SvPVX (SvRV ($arg));