aboutsummaryrefslogtreecommitdiff
path: root/locale/programs
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2000-09-11 07:01:16 +0000
committerUlrich Drepper <drepper@redhat.com>2000-09-11 07:01:16 +0000
commitab52d206a3bd4dbd671b46a1797dee063926604e (patch)
treeb147cc4811dddaadf485b1efc109515d5abb4ba1 /locale/programs
parent6fb7c68eb50c17d4283fd6a3fcc06ed6ddaeb1c7 (diff)
downloadglibc-ab52d206a3bd4dbd671b46a1797dee063926604e.zip
glibc-ab52d206a3bd4dbd671b46a1797dee063926604e.tar.gz
glibc-ab52d206a3bd4dbd671b46a1797dee063926604e.tar.bz2
Update.
2000-09-10 David S. Miller <davem@redhat.com> * sysdeps/sparc/sparc32/__longjmp.S (__longjmp): Correct %fp frame pointer offset for non-fast path. 2000-09-10 Ulrich Drepper <drepper@redhat.com> * locale/programs/3level.h (*_init): Initialize level1, level2, and level3 as well. (*_add): Remove a few unnecessary conditionals.
Diffstat (limited to 'locale/programs')
-rw-r--r--locale/programs/3level.h21
1 files changed, 9 insertions, 12 deletions
diff --git a/locale/programs/3level.h b/locale/programs/3level.h
index d829332..5bb8929 100644
--- a/locale/programs/3level.h
+++ b/locale/programs/3level.h
@@ -66,8 +66,11 @@ struct TABLE
static inline void
CONCAT(TABLE,_init) (struct TABLE *t)
{
+ t->level1 = NULL;
t->level1_alloc = t->level1_size = 0;
+ t->level2 = NULL;
t->level2_alloc = t->level2_size = 0;
+ t->level3 = NULL;
t->level3_alloc = t->level3_size = 0;
}
@@ -116,10 +119,8 @@ CONCAT(TABLE,_add) (struct TABLE *t, uint32_t wc, ELEMENT value)
size_t alloc = 2 * t->level1_alloc;
if (alloc <= index1)
alloc = index1 + 1;
- t->level1 = (t->level1_alloc > 0
- ? (uint32_t *) xrealloc ((char *) t->level1,
- alloc * sizeof (uint32_t))
- : (uint32_t *) xmalloc (alloc * sizeof (uint32_t)));
+ t->level1 = (uint32_t *) xrealloc ((char *) t->level1,
+ alloc * sizeof (uint32_t));
t->level1_alloc = alloc;
}
while (index1 >= t->level1_size)
@@ -131,10 +132,8 @@ CONCAT(TABLE,_add) (struct TABLE *t, uint32_t wc, ELEMENT value)
if (t->level2_size == t->level2_alloc)
{
size_t alloc = 2 * t->level2_alloc + 1;
- t->level2 = (t->level2_alloc > 0
- ? (uint32_t *) xrealloc ((char *) t->level2,
- (alloc << t->q) * sizeof (uint32_t))
- : (uint32_t *) xmalloc ((alloc << t->q) * sizeof (uint32_t)));
+ t->level2 = (uint32_t *) xrealloc ((char *) t->level2,
+ (alloc << t->q) * sizeof (uint32_t));
t->level2_alloc = alloc;
}
i1 = t->level2_size << t->q;
@@ -151,10 +150,8 @@ CONCAT(TABLE,_add) (struct TABLE *t, uint32_t wc, ELEMENT value)
if (t->level3_size == t->level3_alloc)
{
size_t alloc = 2 * t->level3_alloc + 1;
- t->level3 = (t->level3_alloc > 0
- ? (ELEMENT *) xrealloc ((char *) t->level3,
- (alloc << t->p) * sizeof (ELEMENT))
- : (ELEMENT *) xmalloc ((alloc << t->p) * sizeof (ELEMENT)));
+ t->level3 = (ELEMENT *) xrealloc ((char *) t->level3,
+ (alloc << t->p) * sizeof (ELEMENT));
t->level3_alloc = alloc;
}
i1 = t->level3_size << t->p;