diff options
-rw-r--r-- | misc/tst-tsearch.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/misc/tst-tsearch.c b/misc/tst-tsearch.c index 06f743bc05..bdefdebba7 100644 --- a/misc/tst-tsearch.c +++ b/misc/tst-tsearch.c @@ -1,5 +1,5 @@ /* Test program for tsearch et al. - Copyright (C) 1997, 2000 Free Software Foundation, Inc. + Copyright (C) 1997, 2000, 2001 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -171,8 +171,9 @@ mangle_tree (enum order how, enum action what, void **root, int lag) if (i >= lag) k = y[i - lag]; else - k = y[SIZE - i - 1 + lag]; - j = y[i]; + /* Ensure that the array index is within bounds. */ + k = y[(SIZE - i - 1 + lag) % SIZE]; + j = y[i % SIZE]; break; case ascending: |