From fdf047b7d1f737ce8b892b08370ac9a1bedcda73 Mon Sep 17 00:00:00 2001 From: lemon Date: Tue, 20 Jun 2023 20:46:34 +0200 Subject: elf: fix emitting small dats --- elf.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/elf.c b/elf.c index 49c9d83..934e4f8 100644 --- a/elf.c +++ b/elf.c @@ -140,12 +140,12 @@ elfputdat(const struct irdat *dat) static const char zero[8]; enum section s; uint off; - uint ndat = dat->siz < 8 ? dat->siz : dat->dat.n; + uint ndat = dat->siz <= 8 ? dat->siz : dat->dat.n; uint nzr = dat->siz - ndat; - const uchar *d = dat->siz < 8 ? dat->sdat : dat->dat.p; + const uchar *d = dat->siz <= 8 ? dat->sdat : dat->dat.p; assert(dat->siz); - if (!dat->syms && (dat->siz >= 8 ? !d : !memcmp(d, zero, dat->siz))) { + if (!dat->syms && (dat->siz > 8 ? !d : !memcmp(d, zero, dat->siz))) { /* all zeroes */ s = Sbss; } else { -- cgit v1.2.3