- Perl XS and C passing pointer to buffer
- $return_data = $obj->readPath( $path );
- int readPath(const char* path, char* &buffer, bool flag=true);
- void
- readPath(SV* sv_path)
- PPCODE:
- {
- STRLEN len;
- char* path = SvPVbyte(sv_path, len);
- char* buffer = NULL;
- SV* rv = NULL;
- if (!readPath(path, buffer, 0))
- XSRETURN_UNDEF;
- rv = newSVpv(buffer, 0);
- free(buffer);
- ST(0) = sv_2mortal(rv);
- XSRETURN(1);
- }