Fixes to the previous batch of commits

This commit is contained in:
Přemysl Eric Janouch 2017-01-23 23:14:04 +01:00
parent 0e08055d6d
commit 084e964286
Signed by: p
GPG Key ID: B715679E3A361BE6
2 changed files with 5 additions and 7 deletions

View File

@ -194,9 +194,7 @@ row_buffer_space (struct row_buffer *self, int width, chtype attrs)
if (width < 0) if (width < 0)
return; return;
while (self->chars_len + width >= self->chars_alloc) ARRAY_RESERVE (self->chars, (size_t) width);
self->chars = xreallocarray (self->chars,
sizeof *self->chars, (self->chars_alloc <<= 1));
struct row_char space = { .attrs = attrs, .c = ' ', .width = 1 }; struct row_char space = { .attrs = attrs, .c = ' ', .width = 1 };
self->total_width += width; self->total_width += width;

View File

@ -305,17 +305,17 @@ xstrndup (const char *s, size_t n)
// The most basic helper macros to make working with arrays not suck // The most basic helper macros to make working with arrays not suck
#define ARRAY(type, name) type *name; size_t name ## _len, name ## _size; #define ARRAY(type, name) type *name; size_t name ## _len, name ## _alloc;
#define ARRAY_INIT_SIZED(a, n) \ #define ARRAY_INIT_SIZED(a, n) \
BLOCK_START \ BLOCK_START \
(a) = xcalloc (sizeof *(a), (a ## _size) = (n)); \ (a) = xcalloc (sizeof *(a), (a ## _alloc) = (n)); \
(a ## _len) = 0; \ (a ## _len) = 0; \
BLOCK_END BLOCK_END
#define ARRAY_INIT(a) ARRAY_INIT_SIZED (a, 16) #define ARRAY_INIT(a) ARRAY_INIT_SIZED (a, 16)
#define ARRAY_RESERVE(a, n) \ #define ARRAY_RESERVE(a, n) \
BLOCK_START \ BLOCK_START \
while ((a ## _size) - (a ## _len) < n) \ while ((a ## _alloc) - (a ## _len) < n) \
(a) = xreallocarray ((a), sizeof *(a), (a ## _size) <<= 1); \ (a) = xreallocarray ((a), sizeof *(a), (a ## _alloc) <<= 1); \
BLOCK_END BLOCK_END
// --- Double-linked list helpers ---------------------------------------------- // --- Double-linked list helpers ----------------------------------------------