AmendHub

Download:

jcs

/

subtext

/

amendments

/

611

focusable: Check xreallocarray result


jcs made amendment 611 9 months ago
--- focusable.c Sat Dec 6 21:18:09 2025 +++ focusable.c Sat Dec 6 21:47:17 2025 @@ -100,9 +100,11 @@ destroy_focusable(struct focusable **focusablep) } nfocusables--; - if (nfocusables) + if (nfocusables) { focusables = xreallocarray(focusables, sizeof(Ptr), nfocusables); - else { + if (focusables == NULL) + panic("Out of memory"); + } else { xfree(&focusables); focusables = NULL; } @@ -125,8 +127,8 @@ hide_focusable(struct focusable *focusable) if (focusables[n] == focusable) { for (; n < nfocusables - 1; n++) focusables[n] = focusables[n + 1]; + focusables[nfocusables - 1] = focusable; break; } } - focusables[nfocusables - 1] = focusable; }