--- rxvt-unicode/src/rxvtperl.xs 2012/06/07 07:53:12 1.177 +++ rxvt-unicode/src/rxvtperl.xs 2012/06/07 08:12:55 1.178 @@ -2044,6 +2044,8 @@ #if HAVE_IMG +#if 0 + rxvt_img * rxvt_term::new_img (SV *format, int width, int height) CODE: @@ -2054,6 +2056,8 @@ OUTPUT: RETVAL +#endif + #if ENABLE_TRANSPARENCY rxvt_img * @@ -2094,11 +2098,12 @@ if (img) // TODO: cannot be false { - img = img->convert_to (XRenderFindVisualFormat (THIS->dpy, THIS->visual), THIS->pix_colors [Color_bg]); - THIS->bg_pixmap = img->steal (); + img = img->reify (); + rxvt_img *img2 = img->convert_to (XRenderFindVisualFormat (THIS->dpy, THIS->visual), THIS->pix_colors [Color_bg]); + delete img; + THIS->bg_pixmap = img2->steal (); THIS->bg_flags |= rxvt_term::BG_NEEDS_REFRESH; THIS->bg_valid_since = ev::now (); // TODO: extra bloat - delete img; } #endif @@ -2198,6 +2203,9 @@ rxvt_img::clone () rxvt_img * +rxvt_img::reify () + +rxvt_img * rxvt_img::sub_rect (int x, int y, int width, int height) rxvt_img *