aboutsummaryrefslogtreecommitdiff
path: root/grid.c
diff options
context:
space:
mode:
authorThomas Adam <thomas@xteddy.org>2020-05-26 08:42:55 +0100
committerThomas Adam <thomas@xteddy.org>2020-05-26 08:42:55 +0100
commit967e5f8be3d89c6b604484d3b7b2a1ff25db06a5 (patch)
treeabdf31d46ae31d0bf7b705454e7bf86ccebc06b9 /grid.c
parentfd4d3e87938206d8d05509162c3f3a3c274bb478 (diff)
parent6f03e49e68dfe0d9c0c7d49079c4383b26aca916 (diff)
downloadrtmux-967e5f8be3d89c6b604484d3b7b2a1ff25db06a5.tar.gz
rtmux-967e5f8be3d89c6b604484d3b7b2a1ff25db06a5.tar.bz2
rtmux-967e5f8be3d89c6b604484d3b7b2a1ff25db06a5.zip
Merge branch 'obsd-master'
Diffstat (limited to 'grid.c')
-rw-r--r--grid.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/grid.c b/grid.c
index 74b6b7b8..acd1f475 100644
--- a/grid.c
+++ b/grid.c
@@ -76,7 +76,7 @@ grid_need_extended_cell(const struct grid_cell_entry *gce,
return (1);
if (gc->attr > 0xff)
return (1);
- if (gc->data.size != 1 || gc->data.width != 1)
+ if (gc->data.size > 1 || gc->data.width > 1)
return (1);
if ((gc->fg & COLOUR_FLAG_RGB) || (gc->bg & COLOUR_FLAG_RGB))
return (1);
@@ -114,7 +114,7 @@ grid_extended_cell(struct grid_line *gl, struct grid_cell_entry *gce,
gl->flags |= GRID_LINE_EXTENDED;
gee = &gl->extddata[gce->offset];
- gee->data = utf8_map_big(&gc->data);
+ utf8_from_data(&gc->data, &gee->data);
gee->attr = gc->attr;
gee->flags = flags;
gee->fg = gc->fg;
@@ -496,7 +496,8 @@ grid_get_cell1(struct grid_line *gl, u_int px, struct grid_cell *gc)
gc->fg = gee->fg;
gc->bg = gee->bg;
gc->us = gee->us;
- utf8_get_big(gee->data, &gc->data);
+ log_debug("!!! %x", gc->flags);
+ utf8_to_data(gee->data, &gc->data);
}
return;
}
@@ -541,6 +542,7 @@ grid_set_cell(struct grid *gd, u_int px, u_int py, const struct grid_cell *gc)
gl->cellused = px + 1;
gce = &gl->celldata[px];
+ if (gc->flags & GRID_FLAG_PADDING) log_debug("!!! padding %d\n", grid_need_extended_cell(gce, gc));
if (grid_need_extended_cell(gce, gc))
grid_extended_cell(gl, gce, gc);
else
@@ -570,7 +572,7 @@ grid_set_cells(struct grid *gd, u_int px, u_int py, const struct grid_cell *gc,
gce = &gl->celldata[px + i];
if (grid_need_extended_cell(gce, gc)) {
gee = grid_extended_cell(gl, gce, gc);
- gee->data = utf8_set_big(s[i], 1);
+ gee->data = utf8_build_one(s[i], 1);
} else
grid_store_cell(gce, gc, s[i]);
}