* allchblk.c (GC_allochblk_nth): Simplify code in the loop (which
allocates and drops the block in small chunks) by first calling
GC_install_header if h != hbp (instead of calling it a conditional
expression) and, then, calling setup_header if hhdr is non-NULL.
GC_bytes_dropped += total_size;
GC_remove_from_fl_at(hhdr, n);
for (h = hbp; (word)h < (word)limit; h++) {
- if (h == hbp || 0 != (hhdr = GC_install_header(h))) {
- (void) setup_header(
- hhdr, h,
- HBLKSIZE,
- PTRFREE, 0); /* Can't fail */
+ if (h != hbp) {
+ hhdr = GC_install_header(h);
+ }
+ if (NULL != hhdr) {
+ (void)setup_header(hhdr, h, HBLKSIZE, PTRFREE, 0);
+ /* Can't fail. */
if (GC_debugging_started) {
BZERO(h, HBLKSIZE);
}