summaryrefslogtreecommitdiff
path: root/ext/PerlIO-via
Commit message (Collapse)AuthorAgeFilesLines
* Remove all "configured without perlio" test SKIPs from ext/PerlIO-*Nicholas Clark2021-09-162-8/+0
| | | | Also fix one skip that should have been for B, not PerlIO.
* bump $PerlIO::via::VERSIONTony Cook2019-08-081-1/+1
|
* PerlIO::Via: check arg is non-NULL before using it.Tony Cook2019-08-071-2/+2
| | | | | | | | | I can't find any code in core that ends up calling the _pushed handler with arg == NULL, but PerlIO_push() is API, and there might be CPAN or DarkPAN code out there that does, escpecially since there's a check for arg being non-NULL further down. CID 169261.
* [perl #131221] sv_dup/sv_dup_inc are only available under threadsTony Cook2017-06-081-19/+23
|
* [perl #131221] improve duplication of :via handlesTony Cook2017-06-074-8/+178
| | | | | | | | | | | | | | Previously duplication (as with open ... ">&...") would fail unless the user supplied a GETARG, which wasn't documented, and resulted in an attempt to free and unreferened scalar if supplied. Cloning on thread creation was simply broken. We now handle GETARG correctly, and provide a useful default if it returns nothing. Cloning on thread creation now duplicates the appropriate parts of the parent thread's handle.
* Switch most open() calls to three-argument form.John Lightsey2016-12-231-2/+2
| | | | | | | | | | Switch from two-argument form. Filehandle cloning is still done with the two argument form for backward compatibility. Committer: Get all porting tests to pass. Increment some $VERSIONs. Run: ./perl -Ilib regen/mk_invlists.pl; ./perl -Ilib regen/regcharclass.pl For: RT #130122
* XS staticing in ext and distDaniel Dragan2015-10-262-28/+28
| | | | | | | None of these symbols are exported on Win32 (listed in Makefile.PL with EUMM's FUNCLIST), so they shouldn't be exported on Linux. Making them static saves space in the SOs by removing symbol name strings, and removing runtime plt/got indirection.
* Preserve OPTIMIZE in hintsVincent Pit2015-03-171-1/+5
| | | | | | | | | | | | | | | | | | | | Some extensions hints files (B, Digest-MD5, PerlIO-via) forcefully overwrite OPTIMIZE in order to work around compiler mishaps with high level optimizations. However, this loses whatever extra flags are listed in OPTIMIZE, such as compiler warnings flags or PERL_POISON, and makes them difficult to run under a debugger since a minimal level of optimization (usually -O1) is always enforced. This has became visible recently with new XS handshake facility. Instead, we chose to just follow Storable's strategy of lowering the optimization level with a substitution, while keeping all the other flags untouched. If other compiler flags are deemed problematic (such as -mcpu/-march on gcc), they ought to be addressed separately. Only B and PerlIO-via hints files are fixed by this change. The case of Digest-MD5 will be addressed on the CPAN. This fixes [RT #124038].
* bump $PerlIO::via::VERSION to 0.15Tony Cook2014-05-291-1/+1
|
* add va_end() calls where missing for a va_start() or va_end().Jarkko Hietaniemi2014-05-291-4/+5
| | | | | | | | | | | | | Fix for Coverity perl5 CIDs 29225, 29226, 29227, 29228, 29229: Missing varargs init or cleanup (VARARGS) missing va_end: va_end was not called for foo. Use of va_args must be finished off with va_end (in other words, use of va_start or va_copy must be bracketed off with va_end). In most platforms va_end is a no-op, but in some platforms it is required for proper cleanup (or face stack smash, or memory leak). Tony: move va_start() out of the declaration block
* Increase $PerlIO::via::VERSION to 0.14Father Chrysostomos2013-11-231-1/+1
|
* Remove redundant SPAGAIN & PUTBACK after PUSHSTACKi().Nicholas Clark2013-11-221-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PUSHSTACKi() calls SWITCHSTACK(), which sets PL_stack_sp and sp like this: sp = PL_stack_sp = PL_stack_base + AvFILLp(t) Hence after PUSHSTACKi() both are identical, so use of SPAGAIN or PUTBACK to assign one to the other is redundant. The use of SPAGAIN in encoding.xs and via.xs was added with commit 24f59afc531955e5 (April 2002) which added the use of PUSHSTACKi(). It feels like cargo-cult. The use of PUTBACK in Perl_amagic_call() predates the introduction of nested stacks and PUSHSTACKi() in commit e336de0d01f30cc4 (April 1998). It dates from perl 5.000, but it's not clear that it was ever needed, as the code in question looked like this, and nothing could have moved the stack between the dSP and PUTBACK: dSP; BINOP myop; SV* res; Zero(&myop, 1, BINOP); myop.op_last = (OP *) &myop; myop.op_next = Nullop; myop.op_flags = OPf_KNOW|OPf_STACKED; ENTER; SAVESPTR(op); op = (OP *) &myop; PUTBACK; The PUTBACK and SPAGAIN in Perl_require_pv() were added by commit d3acc0f7e5197310 (June 1998) which also added the PUSHSTACKi(). They have both been redundant since they were added.
* PerlIO::via: fix compiler warningDavid Mitchell2013-11-182-2/+7
| | | | | | | | | | In GV *gv = newGVgen(HvNAME_get(s->stash)) HvNAME_get() can return a null value (don't know whether it ever will in these circumstances), while newGVgen() expects a non-null arg. So calculate HvNAME_get() first, and bail if it's null.
* Increase $PerlIO::via::VERSION following commit d477ab3eb4369a52.Nicholas Clark2011-07-211-1/+1
|
* s/bellow/below/ in PerlIO::via docsEric Brine2011-07-211-2/+2
| | | | Signed-off-by: Abigail <abigail@abigail.be>
* bump version of many modulesZefram2010-12-191-1/+1
| | | | | Core-only modules that have changed from v5.13.7, and dual-life modules that have changed from v5.13.7 and didn't show up in earlier passes.
* fix various compiler warnings from XS codeZefram2010-12-111-1/+4
| | | | | | | | | | | Trivial changes to fix warnings of types * unclear precedence * assignment as conditional * signed/unsigned mixing * unused parameter/variable * value computed not used * wrong argument type for a printf format * variable may be used uninitialised (due to unhandled switch case)
* Convert modules in ext/ to pass minimal arguments to XSLoader::load().Nicholas Clark2010-10-141-3/+3
|
* Replace sv_2mortal(newSVpvn(...)) with newSVpvn_flags(..., SVs_TEMP)Nicholas Clark2009-10-152-3/+3
|
* Make extensions in ext run their tests from the extension's own directory.Nicholas Clark2009-08-281-2/+0
| | | | | | | | | | | Inspired by, and in parts borrows from, Schwern's branch on github, but takes a slightly different approach in places. Not quite perfect yet - ext/File-Glob still runs from t, at least one FIXME needs fixing, and the changes to dual-life modules' tests need to be filtered back upstream, and possibly modified to suit their respective authors. But it works.
* make_ext.pl's automatic Makefile.PL generation can write these five for us.Nicholas Clark2009-03-261-7/+0
|
* Rename ext/PerlIO/via to ext/PerlIO-viaNicholas Clark2009-02-095-0/+988