diff --git a/image-sixel.c b/image-sixel.c index cc946cfe..2e6f247d 100644 --- a/image-sixel.c +++ b/image-sixel.c @@ -450,11 +450,11 @@ sixel_scale(struct sixel_image *si, u_int xpixel, u_int ypixel, u_int ox, new->set_ra = si->set_ra; /* subtract offset */ - new->ra_x = new->ra_x > pox ? new->ra_x - pox : 0; - new->ra_y = new->ra_y > poy ? new->ra_y - poy : 0; + new->ra_x = si->ra_x > pox ? si->ra_x - pox : 0; + new->ra_y = si->ra_y > poy ? si->ra_y - poy : 0; /* clamp to size */ - new->ra_x = si->ra_x < psx ? si->ra_x : psx; - new->ra_y = si->ra_y < psy ? si->ra_y : psy; + new->ra_x = new->ra_x < psx ? new->ra_x : psx; + new->ra_y = new->ra_y < psy ? new->ra_y : psy; /* resize */ new->ra_x = new->ra_x * xpixel / si->xpixel; new->ra_y = new->ra_y * ypixel / si->ypixel;