degesch: fix two minor issues
- completely new unread markers could be created in active buffers - control characters confused word wrapping
This commit is contained in:
parent
f964495d1a
commit
dc71af9c31
|
@ -3292,6 +3292,10 @@ line_char_new (const char *mb, size_t mb_len, wchar_t wc)
|
||||||
memcpy (self->bytes, mb, (self->len = MIN (mb_len, sizeof self->bytes)));
|
memcpy (self->bytes, mb, (self->len = MIN (mb_len, sizeof self->bytes)));
|
||||||
self->width = wcwidth ((self->wide = wc));
|
self->width = wcwidth ((self->wide = wc));
|
||||||
|
|
||||||
|
// Typically various control characters
|
||||||
|
if (self->width < 0)
|
||||||
|
self->width = 0;
|
||||||
|
|
||||||
self->attrs.bg = self->attrs.fg = -1;
|
self->attrs.bg = self->attrs.fg = -1;
|
||||||
self->attrs.named = ATTR_RESET;
|
self->attrs.named = ATTR_RESET;
|
||||||
return self;
|
return self;
|
||||||
|
@ -3777,7 +3781,9 @@ log_formatter (struct app_context *ctx,
|
||||||
else
|
else
|
||||||
displayed = false;
|
displayed = false;
|
||||||
|
|
||||||
if (!displayed || buffer == ctx->current_buffer)
|
// Advance the unread marker in active buffers but don't create a new one
|
||||||
|
if (!displayed
|
||||||
|
|| (buffer == ctx->current_buffer && buffer->new_messages_count))
|
||||||
{
|
{
|
||||||
buffer->new_messages_count++;
|
buffer->new_messages_count++;
|
||||||
if (flags & BUFFER_LINE_UNIMPORTANT)
|
if (flags & BUFFER_LINE_UNIMPORTANT)
|
||||||
|
|
Loading…
Reference in New Issue