]> Dogcows Code - chaz/tint2/commitdiff
*fix* issue 217
authorAndreas Fink <andreas.fink85@googlemail.com>
Sun, 31 Jan 2010 16:56:54 +0000 (16:56 +0000)
committerAndreas Fink <andreas.fink85@googlemail.com>
Sun, 31 Jan 2010 16:56:54 +0000 (16:56 +0000)
src/systray/systraybar.c
src/tint.c

index 8065774b5871b0296085ac298c82b4dd82c74dc8..6db579783109b64992ce337c64381909ad5e928c 100644 (file)
@@ -522,9 +522,13 @@ void systray_render_icon_now(void* t)
        Pixmap tmp_pmap = XCreatePixmap(server.dsp, server.root_win, traywin->width, traywin->height, server.depth);
        XRenderPictFormat* f;
        if (traywin->depth == 24)
-               f = XRenderFindVisualFormat(server.dsp, DefaultVisual(server.dsp, 0));
-       else
+               f = XRenderFindStandardFormat(server.dsp, PictStandardRGB24);
+       else if (traywin->depth == 32)
                f = XRenderFindStandardFormat(server.dsp, PictStandardARGB32);
+       else {
+               printf("Strange tray icon found...\n");
+               return;
+       }
        Picture pict_image = XRenderCreatePicture(server.dsp, traywin->tray_id, f, 0, 0);
        Picture pict_drawable = XRenderCreatePicture(server.dsp, tmp_pmap, XRenderFindVisualFormat(server.dsp, server.visual), 0, 0);
        XRenderComposite(server.dsp, PictOpSrc, pict_image, None, pict_drawable, 0, 0, 0, 0, 0, 0, traywin->width, traywin->height);
index fef466a279401b5bc723dbc3ac45dcaa0fc72495..df1c58912cd94880b37ccbade2d005f738f38afe 100644 (file)
@@ -694,7 +694,7 @@ int main (int argc, char *argv[])
                        XFlush (server.dsp);
 
                        panel = (Panel*)systray.area.panel;
-                       if (refresh_systray && !panel->is_hidden) {
+                       if (refresh_systray && panel && !panel->is_hidden) {
                                refresh_systray = 0;
                                // tint2 doen't draw systray icons. it just redraw background.
                                XSetWindowBackgroundPixmap (server.dsp, panel->main_win, panel->temp_pmap);
This page took 0.028622 seconds and 4 git commands to generate.