Please note that the localedef programs makes sure that `position'
is not used at the first level. */
- if (! __libc_use_alloca ((s1len + s2len) * (sizeof (int32_t) + 1))
+ if (! __libc_use_alloca ((s1len + s2len) * (sizeof (int32_t) + 1)))
{
idx1arr = (int32_t *) malloc ((s1len + s2len) * (sizeof (int32_t) + 1));
idx2arr = &idx1arr[s1len];
/* The last pushed character was handled. Continue
with forward characters. */
if (idx1cnt < idx1max)
- idx1now = idx1cnt;
+ {
+ idx1now = idx1cnt;
+ backw1_stop = ~0ul;
+ }
else
/* Nothing anymore. The backward sequence ended with
the last sequence in the string. Note that seq1len
/* The last pushed character was handled. Continue
with forward characters. */
if (idx2cnt < idx2max)
- idx2now = idx2cnt;
+ {
+ idx2now = idx2cnt;
+ backw2_stop = ~0ul;
+ }
else
/* Nothing anymore. The backward sequence ended with
the last sequence in the string. Note that seq2len
/* The last pushed character was handled. Continue
with forward characters. */
if (idx1cnt < idx1max)
- idx1now = idx1cnt;
+ {
+ idx1now = idx1cnt;
+ backw1_stop = ~0ul;
+ }
else
{
/* Nothing anymore. The backward sequence
/* The last pushed character was handled. Continue
with forward characters. */
if (idx2cnt < idx2max)
- idx2now = idx2cnt;
+ {
+ idx2now = idx2cnt;
+ backw2_stop = ~0ul;
+ }
else
{
/* Nothing anymore. The backward sequence