develooper Front page | perl.perl5.porters | Postings from August 2003

Re: Storable Error

Thread Previous | Thread Next
From:
Nicholas Clark
Date:
August 11, 2003 13:58
Subject:
Re: Storable Error
Message ID:
20030811215839.Q20130@plum.flirble.org
On Sun, Aug 10, 2003 at 01:07:55AM +0530, Abhijit Menon-Sen wrote:
> At 2003-08-09 00:35:36 +0100, nick@ccl4.org wrote:
> >
> > I find that I can create hashes where key flags are set but HASKFLAGS
> > is not with the appended patch, and running t/op/utfhash.t with -DA
> 
> Nicholas, thank you ever so much. With your patch as a starting point, I
> found: chop ($a = "\x{df}".chr 256); $a{$a} = $a{"\x{df}"} = 1; %a = ();
> 
> The problem was much easier to track down thereafter. The appended patch
> seems to fix it and break nothing else. I've applied it as #20587, but I
> would appreciate it if you could cast an eye over it. (Can you think of
> any cases I've missed?)

This looks sane (and I think it's fixing bugs I created, so thanks)

There are 2 similar comments about

               /* Need to swap the key we have for a key with the flags we
                   need. As keys are shared we can't just write to the flag,
                   so we share the new one, unshare the old one.  */

in hv_store_ent and hv_store_flags

where it looks like

> +            if (flags)
> +                HvHASKFLAGS_on(hv);

is also needed. However, I can't (yet) work out how to make a test case
that currently fails.

Nicholas Clark

Thread Previous | Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About