Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix fatal bug in libsais64_convert_inplace_64u_to_32u (#21)
v2.7.4 modified libsais64_convert_inplace_64u_to_32u to accept only a single pointer to an array of uint64_t of length n. This results in a segmentation fault due to reading past the end of this array, in particular reading elements (i+i+1) for i < n. Overall, this leads to libsais64 failing for any input with length > 2^32. libsais64_convert_inplace_64u_to_32u should instead view the array as an array of uint32_t (of length 2n), which was true in earlier versions that accepted two pointers.
- Loading branch information