[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Hash seed breaks 5.8.1 binary API; fix suggested



Chip Salzenberg <chip@pobox.com> writes:

> I suggest we fix this problem in 5.8.2 (which should be released
> quickly) in the following fashion:
> 
>   1. Decree that PL_hash_seed should forever and ever be zero.
>      This will make 5.8.0 and 5.8.1 PERL_HASH() calculate the same
>      value at all times.
> 
>   2. Create a new variable PL_new_hash_seed which is initialized with
>      the methods currently used for PL_hash_seed.
> 
>   3. Add (or xor or whatever) PL_new_hash_seed with the user-provided
>      hash value *inside* the functions that use hashes, *not* outside
>      them.
> 
> These changes should make 5.8.2 both source and binary compatible with
> both 5.8.0. and 5.8.1.

Looks good.  I think we should do it.

--Gisle



Reply to: