Rely on compiler to produce 0 or 1 only for boolean expressions
This commit is contained in:
parent
e442890523
commit
683b59c876
2 changed files with 5 additions and 10 deletions
|
|
@ -2425,11 +2425,6 @@ dirty_scroll(Screen *self) {
|
|||
screen_pause_rendering(self, false, 0);
|
||||
}
|
||||
|
||||
static inline int
|
||||
render_row_offset_for_screen(const Screen *self) {
|
||||
return pixel_scroll_enabled(self) ? 1 : 0;
|
||||
}
|
||||
|
||||
static void
|
||||
screen_clear_scrollback(Screen *self) {
|
||||
historybuf_clear(self->historybuf);
|
||||
|
|
@ -3518,7 +3513,7 @@ screen_update_only_line_graphics_data(Screen *self) {
|
|||
screen_reset_dirty(self);
|
||||
self->scroll_changed = false;
|
||||
const unsigned int render_lines = render_lines_for_screen(self);
|
||||
const int render_row_offset = render_row_offset_for_screen(self);
|
||||
const int render_row_offset = pixel_scroll_enabled(self);
|
||||
Line line = {.text_cache = self->text_cache};
|
||||
for (unsigned int render_row = 0; render_row < render_lines; render_row++) {
|
||||
const int virtual_y = (int)render_row - render_row_offset;
|
||||
|
|
@ -3561,7 +3556,7 @@ screen_update_cell_data(Screen *self, void *address, FONTS_DATA_HANDLE fonts_dat
|
|||
if (self->scrolled_by) self->scrolled_by = MIN(self->scrolled_by + history_line_added_count, self->historybuf->count);
|
||||
self->scroll_changed = false;
|
||||
const unsigned int render_lines = render_lines_for_screen(self);
|
||||
const int render_row_offset = render_row_offset_for_screen(self);
|
||||
const int render_row_offset = pixel_scroll_enabled(self);
|
||||
Line line = {.text_cache = self->text_cache};
|
||||
for (unsigned int render_row = 0; render_row < render_lines; render_row++) {
|
||||
const int virtual_y = (int)render_row - render_row_offset;
|
||||
|
|
@ -3795,7 +3790,7 @@ void
|
|||
screen_apply_selection(Screen *self, void *address_, size_t size) {
|
||||
uint8_t *address = address_;
|
||||
memset(address, 0, size);
|
||||
const int offset = render_row_offset_for_screen(self);
|
||||
const int offset = pixel_scroll_enabled(self);
|
||||
Selections *sel = self->paused_rendering.expires_at ? &self->paused_rendering.selections : &self->selections;
|
||||
for (size_t i = 0; i < sel->count; i++) apply_selection(self, address, sel->items + i, 1, offset);
|
||||
sel->last_rendered_count = sel->count;
|
||||
|
|
@ -4312,7 +4307,7 @@ render_overlay_line(Screen *self, Line *line, FONTS_DATA_HANDLE fonts_data) {
|
|||
|
||||
static void
|
||||
update_overlay_line_data(Screen *self, uint8_t *data) {
|
||||
const int render_row_offset = render_row_offset_for_screen(self);
|
||||
const int render_row_offset = pixel_scroll_enabled(self);
|
||||
const size_t base = sizeof(GPUCell) * (self->overlay_line.ynum + self->scrolled_by + render_row_offset) * self->columns;
|
||||
memcpy(data + base, self->overlay_line.gpu_cells, self->columns * sizeof(GPUCell));
|
||||
}
|
||||
|
|
|
|||
|
|
@ -195,7 +195,7 @@ typedef struct {
|
|||
} Screen;
|
||||
|
||||
#define pixel_scroll_enabled(screen) (global_state.opts.pixel_scroll && !screen->paused_rendering.expires_at && screen->linebuf == screen->main_linebuf)
|
||||
#define render_lines_for_screen(screen) (screen->lines + (pixel_scroll_enabled(screen) ? 1u : 0u))
|
||||
#define render_lines_for_screen(screen) (screen->lines + pixel_scroll_enabled(screen))
|
||||
|
||||
void screen_align(Screen*);
|
||||
void screen_restore_cursor(Screen *);
|
||||
|
|
|
|||
Loading…
Reference in a new issue