trafi

Transducteurs finis
git clone git://git.asteride.xyz/trafi.git
Journaux | Fichiers | Références

commit 5d1207c89094b0c740ce0c9fc6285ce6a47b78b0
parent c8beb6a10af5403928380d99252c0acf8a1bc55f
Auteur: Loïc Daignault-Pichette <loic@asteride.xyz>
Date:   Fri,  3 Apr 2026 18:16:08 -0400

Faire que tampinf_minim affecte nelem

Diffstat:
Mtampinf.c | 10+++++++++-
1 fichier modifié, 9 insertions(+), 1 suppression(-)

diff --git a/tampinf.c b/tampinf.c @@ -87,11 +87,18 @@ tampinf_minim(void *ti, size_t i) { size_t nlngr; /* Nouvelle longueur. */ Entete *nent; /* Nouvelle entête. */ + size_t nnelem; /* Nouveau nombre d’éléments. */ TAMPINF_COHERENT(ti); - if (ENTETE(ti)->s.lngr > i) + nnelem = ENTETE(ti)->s.nelem; + if (nnelem < i + 1) + nnelem = i + 1; + + if (ENTETE(ti)->s.lngr > i) { + ENTETE(ti)->s.nelem = nnelem; return ti; + } /* Doubler la longueur jusqu’à ce quelle soit supérieure ou égale à la * longueur recherchée. */ @@ -105,6 +112,7 @@ tampinf_minim(void *ti, size_t i) memset((char *)TAMPON(nent) + nent->s.lngr * nent->s.tll, 0, (nlngr - nent->s.lngr) * nent->s.tll); nent->s.lngr = nlngr; + nent->s.nelem = nnelem; TAMPINF_COHERENT(TAMPON(nent));