wdvi

network DVI viewer
Log | Files | Refs

commit 4480e73bfd3d9fc2428dcf37161d805698f71322
parent 375592be35b2e15403d648043f111103cb68d0df
Author: Kyle Milz <krwmilz@gmail.com>
Date:   Thu,  9 Mar 2023 01:12:12 +0000

clean up put_bitmap()

- return early to avoid control flow nesting
- use ansi function signatures

Diffstat:
Mdvi-draw.c | 40+++++++++++++++++++++-------------------
1 file changed, 21 insertions(+), 19 deletions(-)

diff --git a/dvi-draw.c b/dvi-draw.c @@ -115,29 +115,31 @@ put_rule(int x, int y, unsigned int w, unsigned int h) } static void -put_bitmap(bitmap, x, y) - struct bitmap *bitmap; - int x, y; +put_bitmap(struct bitmap *bitmap, int x, int y) { if (debug & DBG_BITMAP) printf("X(%d,%d)\n", x - currwin.base_x, y - currwin.base_y); - if (x < max_x && x + (int) bitmap->w >= min_x - && y < max_y && y + (int) bitmap->h >= min_y) { - if (fg_active != fg_current) do_color_change(); - image->width = bitmap->w; - image->height = bitmap->h; - image->data = bitmap->bits; - image->bytes_per_line = bitmap->bytes_wide; - XPutImage(DISP, currwin.win, foreGC, image, - 0, 0, - x - currwin.base_x, y - currwin.base_y, - bitmap->w, bitmap->h); - if (foreGC2) + + if (x >= max_x || x + (int) bitmap->w < min_x || + y >= max_y || y + (int) bitmap->h < min_y) + return; + + if (fg_active != fg_current) + do_color_change(); + + image->width = bitmap->w; + image->height = bitmap->h; + image->data = bitmap->bits; + image->bytes_per_line = bitmap->bytes_wide; + XPutImage(DISP, currwin.win, foreGC, image, + 0, 0, + x - currwin.base_x, y - currwin.base_y, + bitmap->w, bitmap->h); + if (foreGC2) XPutImage(DISP, currwin.win, foreGC2, image, - 0, 0, - x - currwin.base_x, y - currwin.base_y, - bitmap->w, bitmap->h); - } + 0, 0, + x - currwin.base_x, y - currwin.base_y, + bitmap->w, bitmap->h); }