From: Jarkko Hietaniemi Date: Sun, 24 Mar 2002 13:58:44 +0000 (+0000) Subject: Integrate perlio: X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=f54fca96add61189e2fde1d41312bc8885ac2d97;p=p5sagit%2Fp5-mst-13.2.git Integrate perlio: [ 15462] Avoid core-dump in Encode with PERLIO=mmap p4raw-link: @15462 on //depot/perlio: b4d9096427023cc00e82f9ecbc4205dfe7395a78 p4raw-id: //depot/perl@15466 p4raw-integrated: from //depot/perlio@15465 'copy in' ext/Encode/Encode.xs (@15462..) --- diff --git a/ext/Encode/Encode.xs b/ext/Encode/Encode.xs index 8fb4106..e4f7b10 100644 --- a/ext/Encode/Encode.xs +++ b/ext/Encode/Encode.xs @@ -576,7 +576,15 @@ encode_method(pTHX_ encode_t * enc, encpage_t * dir, SV * src, if (check) { sdone = SvCUR(src) - (slen+sdone); if (sdone) { +#if 1 + /* FIXME: A Move() is dangerous - PV could be mmap'ed readonly + SvOOK would be ideal - but sv_backoff does not understand SvLEN == 0 + type SVs and sv_clear() calls it ... + */ + sv_setpvn(src,s+slen,sdone); +#else Move(s + slen, SvPVX(src), sdone , U8); +#endif } SvCUR_set(src, sdone); }