This is in continuation to the question that I asked in Callback function in xsubpp. While writing another function in a xsubpp program, I wrote something like this:
HV *data_hash = newHV();
/* do some processing here. */
Here the function call_perl_sub() and subroutine test_callback are same as the one given in Callback function in xsubpp. However, when the callback is executed, it doesn't pass the reference to the data_hash that I passed to the callback subroutine and gives me the Bizarre copy of HASH error.
I checked the reference counts using SvREFCNT(data_hash) and found to be correct. Is there something that I am missing while passing it to the callback?