i wrote:
|hereby i announce S-nail v14.9.2, the *real* "crested tit".
|It replaces v14.9.1 from yesterday, which was broken.
I am terribly sorry, but i did not use an optimizing / xy compiler
since v14.9.0, and tcc(1) did not trigger this problem (which was
revealed by our own memory canaries!).
And it was about variable-sized structures and macro names which
were shorter than the ISO C89 size of the variable-sized field,
and a faulty memset(3) which went for "sizeof *STRUCT" instead
of "n_VSTRUCT_SIZEOF(STRUCT)". Note that in practice it should
not have triggered at all, because our own memory pool aligns
the memory size via
#define n_ALIGN_SMALL(X) \
(((X) + n_MAX(sizeof(size_t), sizeof(void*))) &\
~(n_MAX(sizeof(size_t), sizeof(void*)) - 1))
and the field pads up a structure to a multiple if 64-bit, the
on in question was 3 bytes... I.e., rather debug only.
But nonetheless.
I will remove any trace of the no-go v14.9.1 before the weekend.
I deeply regret this inconvenience of yours!
Ciao.
--steffen
|
|Der Kragenbaer, The moon bear,
|der holt sich munter he cheerfully and one by one
|einen nach dem anderen runter wa.ks himself off
|(By Robert Gernhardt)