+2009-04-24 Ulrich Drepper <drepper@redhat.com>
+
+ [BZ #10100]
+ * misc/hsearch_r.c (hsearch_r): Add back ensurance that hval is
+ not zero.
+
2009-04-24 Jakub Jelinek <jakub@redhat.com>
* iconvdata/sjis.c (BODY): Don't advance inptr before
/* To prepare for enlargements of the mmaped area reserve some
address space. */
- size_t reserved;
+ size_t reserved = RESERVE_MMAP_SIZE;
int xflags = 0;
- p = mmap64 (NULL, RESERVE_MMAP_SIZE, PROT_NONE, MAP_ANON, -1, 0);
- if (p != MAP_FAILED)
- {
- xflags = MAP_FIXED;
- reserved = RESERVE_MMAP_SIZE;
- }
+ if (total < RESERVE_MMAP_SIZE
+ && ((p = mmap64 (NULL, reserved, PROT_NONE, MAP_ANON, -1, 0))
+ != MAP_FAILED))
+ xflags = MAP_FIXED;
else
{
p = NULL;
/* To prepare for enlargements of the mmaped area reserve some
address space. */
- size_t reserved;
+ size_t reserved = RESERVE_MMAP_SIZE;
int xflags = 0;
- void *p = mmap64 (NULL, RESERVE_MMAP_SIZE, PROT_NONE, MAP_ANON, -1, 0);
- if (p != MAP_FAILED)
- {
- xflags = MAP_FIXED;
- reserved = RESERVE_MMAP_SIZE;
- }
+ void *p;
+ if (st.st_size < RESERVE_MMAP_SIZE
+ && ((p = mmap64 (NULL, RESERVE_MMAP_SIZE, PROT_NONE, MAP_ANON, -1, 0))
+ != MAP_FAILED))
+ xflags = MAP_FIXED;
else
{
p = NULL;
{
if (ah->fd != -1)
{
- munmap (ah->addr, ah->mmaped);
+ munmap (ah->addr, MAX (ah->reserved, ah->mmaped));
close (ah->fd);
}
}