X-Git-Url: https://perl5.git.perl.org/perl5.git/blobdiff_plain/61839fa9abc846d536cfde630335d4594d0bb0fe..fefb19804f3b755117d0936d5a943a08ec9f6cab:/ext/IO/IO.xs?ds=inline diff --git a/ext/IO/IO.xs b/ext/IO/IO.xs index 5efbf24..2eb16f4 100644 --- a/ext/IO/IO.xs +++ b/ext/IO/IO.xs @@ -106,11 +106,12 @@ fsetpos(handle, pos) InputStream handle SV * pos CODE: - if (handle) + char *p; + if (handle && (p = SvPVx(pos, na)) && na == sizeof(Fpos_t)) #ifdef PerlIO - RETVAL = PerlIO_setpos(handle, (Fpos_t*)SvPVX(pos)); + RETVAL = PerlIO_setpos(handle, (Fpos_t*)p); #else - RETVAL = fsetpos(handle, (Fpos_t*)SvPVX(pos)); + RETVAL = fsetpos(handle, (Fpos_t*)p); #endif else { RETVAL = -1;