develooper Front page | perl.perl5.porters | Postings from April 2018

[perl #133139] Bleadperl breaks DROLSKY/Fey-0.43.tar.gz on Windowsand other OSes

Thread Previous | Thread Next
Sergey Aleynikov via RT
April 22, 2018 09:30
[perl #133139] Bleadperl breaks DROLSKY/Fey-0.43.tar.gz on Windowsand other OSes
Message ID:
On Sat, 21 Apr 2018 14:59:00 -0700, chorny wrote:

> Worked on 5.26.1 and 5.27.6, fails on 5.27.8. Also fails on 5.26.2RC1:
> c247befa3bc8

16ada235c332e017667585e1a5a00ce43a31c529 is the first bad commit
commit 16ada235c332e017667585e1a5a00ce43a31c529
Author: Zefram <>
Date:   Tue Dec 12 09:47:41 2017 +0000

    fix GvSV refcounting in sort

    Where a sort operation passes the comparands to a comparison block in $a
    and $b, it wasn't taking account of the fact that the GvSV slots in *a
    and *b are refcounted.  It would write the comparands into those slots
    without altering any reference counts, and end by restoring the values
    those slots had to start with.  This was all fine so long as nothing
    else touched those slots during the process.  But code running during
    the comparison is free to write to them by "*a = \1", which does frob
    the reference counts.

    Fix it by switching sort to manipulate GvSV in a refcount-preserving
    manner, compatible with all other operations on those slots.  Fixes
    [perl #92264].

via perlbug:  queue: perl5 status: open

Thread Previous | Thread Next Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About