in reply to converting a C pointer to a perl reference
Hmm. I'm not sure why that might be a problem. There's a HAS_64K_LIMIT defined in dosish.h, but it seems unlikely to be related. Try this as an alternative and see what happens.
htm_sv = newSV(filesize + 1); SvPOK_on(htm_sv); SvCUR_set(filesize); ptr = SvPVX(htm_sv); Copy(*htmFile, ptr, filesize, char); XPUSHs(sv_2mortal(htm_sv));
(newSVpvn takes two arguments -- a char* and a STRLEN -- while I only see one in your example... but I assume that's just a typo, as it would have been a compile-time error and there's no equivalent that uses only one arg.)
|
|---|