On Sun, Oct 13, 2002 at 11:20:01PM +0000, Mikhael Goikhman wrote:
> On 13 Oct 2002 15:16:40 +0200, Dominik Vogt wrote:
> > 
> > > > > The weird things seen with UseIconPosition still should be fixed.
> > > > > I will rereport this.
> > > > 
> > > > I don't see any, but I'm awaiting a bug report.
> > > 
> > > Ok, later, and not on this list. :)
> > 
> > I fixed the random icon title position w/ icon position hints.  If
> > there is anything else, let me know.
> 
> It seems to be ok now, although I didn't test throughly yet (with 2.4.x).
> 
> Here is how to get another weird thing. Add to your .fvwm2rc the line
> "Style Eterm* IconOverride" and optionally "Style Eterm* Icon xterm.xpm",
> the second is not needed if you normally use iconified windows.
> 
> Then execute "Style Eterm* NoIconOverride" and start Eterm, iconify it.
> You should see 48x48 icon supplied by Eterm (a monitor in a perspective).
> Then do "Restart" while Eterm is iconified. You should get this 48x48
> icon window (unmanaged) and the normal icon assigned to Eterm (xterm.xpm).

Fixed.  When the icon changed, fvwm never unmapped the application
provided icon window.

On a side note, I found some code that I don't understand
(add_window.c, destroy_icon()):

        if (FW_W_ICON_TITLE(fw))
        {
                if (IS_PIXMAP_OURS(fw))
                {
                        XFreePixmap(dpy, fw->iconPixmap);
                        if (fw->icon_maskPixmap != None)
                        {
                                XFreePixmap(dpy, fw->icon_maskPixmap);
                        }
                        if (fw->icon_alphaPixmap != None)
                        {
                                XFreePixmap(dpy, fw->icon_alphaPixmap);
                        }
                }
                XDestroyWindow(dpy, FW_W_ICON_TITLE(fw));
                XDeleteContext(dpy, FW_W_ICON_TITLE(fw), FvwmContext);
                XFlush(dpy);
        }
        if (FW_W_ICON_PIXMAP(fw) != None)
        {
                if (IS_ICON_OURS(fw))
                {
                        XDestroyWindow(dpy, FW_W_ICON_PIXMAP(fw));
                }
                else
                {
                        XUnmapWindow(dpy, FW_W_ICON_PIXMAP(fw));
                }
                XDeleteContext(dpy, FW_W_ICON_PIXMAP(fw), FvwmContext);
        }

Why is the pixmap freed in the "if (FW_W_ICON_TITLE(fw))"
condition?  Shouldn't it be freed in the
"if (FW_W_ICON_PIXMAP(fw) != None)" branch, or outside of both
branches?  I don't exactly understand the icon logic, but to me it
seems that fvwm leaks the icon pixmap memory if the icon has no
title.

Bye

Dominik ^_^  ^_^

 --
Dominik Vogt, [EMAIL PROTECTED]
Reply-To: [EMAIL PROTECTED]
--
Visit the official FVWM web page at <URL:http://www.fvwm.org/>.
To unsubscribe from the list, send "unsubscribe fvwm-workers" in the
body of a message to [EMAIL PROTECTED]
To report problems, send mail to [EMAIL PROTECTED]

Reply via email to