--- rxvt-unicode/src/rxvtimg.C 2012/06/07 08:45:34 1.36 +++ rxvt-unicode/src/rxvtimg.C 2012/06/07 09:57:09 1.38 @@ -418,17 +418,18 @@ rxvt_img * rxvt_img::sub_rect (int x, int y, int width, int height) { - bool need_reify = w < width || h < height; - rxvt_img *img = clone (); img->x += x; img->y += y; - img->w = width; - img->h = height; - if (need_reify) - img->reify (); + if (w != width || h != height) + { + img->w = width; + img->h = height; + + img->reify (); + } return img; } @@ -528,7 +529,7 @@ { rxvt_img *img2 = clone (); Display *dpy = s->display->dpy; - Picture src = src_picture (); + Picture src = img->src_picture (); Picture dst = XRenderCreatePicture (dpy, img2->pm, img2->format, 0, 0); Picture mask = create_xrender_mask (dpy, img->pm, False);