From: root Date: Mon, 19 Nov 2007 15:33:34 +0000 (+0000) Subject: *** empty log message *** X-Git-Url: http://git.openbox.org/?a=commitdiff_plain;h=81b597d4800a01f13e877853af209514610f8039;p=dana%2Furxvt.git *** empty log message *** --- diff --git a/src/background.C b/src/background.C index df1fb47d..aaa15ff6 100644 --- a/src/background.C +++ b/src/background.C @@ -89,7 +89,7 @@ */ #ifdef HAVE_BG_PIXMAP -bgPixmap_t::bgPixmap_t() +bgPixmap_t::bgPixmap_t () { #ifdef HAVE_AFTERIMAGE original_asim = NULL; @@ -102,12 +102,14 @@ bgPixmap_t::bgPixmap_t() pixmap = None; } -bgPixmap_t::~bgPixmap_t() +void +bgPixmap_t::destroy () { #ifdef HAVE_AFTERIMAGE if (original_asim) safe_asimage_destroy (original_asim); #endif + if (pixmap && target) XFreePixmap (target->dpy, pixmap); } diff --git a/src/background.h b/src/background.h index c348d6ee..4263b955 100644 --- a/src/background.h +++ b/src/background.h @@ -13,10 +13,10 @@ #if defined(BG_IMAGE_FROM_FILE) || defined(ENABLE_TRANSPARENCY) # define HAVE_BG_PIXMAP 1/* to simplify further usage */ -struct bgPixmap_t { - - bgPixmap_t(); - ~bgPixmap_t(); +struct bgPixmap_t +{ + bgPixmap_t (); + void destroy (); enum { geometrySet = (1UL<<0), diff --git a/src/main.C b/src/main.C index 83904db9..28a804c4 100644 --- a/src/main.C +++ b/src/main.C @@ -183,19 +183,19 @@ rxvt_term::rxvt_term () pointer_ev (this, &rxvt_term::pointer_cb), #endif #ifdef USE_XIM - im_ev (this, &rxvt_term::im_cb), + im_ev (this, &rxvt_term::im_cb), #endif #ifndef NO_BELL - bell_ev (this, &rxvt_term::bell_cb), + bell_ev (this, &rxvt_term::bell_cb), #endif termwin_ev (this, &rxvt_term::x_cb), - vt_ev (this, &rxvt_term::x_cb), - child_ev (this, &rxvt_term::child_cb), + vt_ev (this, &rxvt_term::x_cb), + child_ev (this, &rxvt_term::child_cb), prepare_ev (this, &rxvt_term::prepare_cb), - flush_ev (this, &rxvt_term::flush_cb), + flush_ev (this, &rxvt_term::flush_cb), destroy_ev (this, &rxvt_term::destroy_cb), - pty_ev (this, &rxvt_term::pty_cb), - incr_ev (this, &rxvt_term::incr_cb) + pty_ev (this, &rxvt_term::pty_cb), + incr_ev (this, &rxvt_term::incr_cb) { cmdbuf_ptr = cmdbuf_endp = cmdbuf_base; @@ -286,6 +286,7 @@ rxvt_term::~rxvt_term () delete [] pix_colors_unfocused; #endif + bgPixmap.destroy (); displays.put (display); scr_release ();