emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Problems with compositing-enabled metacity in gnome enviroment


From: Jan Djärv
Subject: Re: Problems with compositing-enabled metacity in gnome enviroment
Date: Fri, 11 Feb 2011 17:02:44 +0100
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.13) Gecko/20101208 Thunderbird/3.1.7

2011-02-11 15:53, Darren Hoo skrev:

The version of  metacity I am using is 2.30.1-3 in Debian Unstable. Is
there any related
bug report of metacity that I can refer to?

No, but I guess you can file one. BTW, I got 2.30.2-0 in ubuntu, and I always get the bug you see, even with emacs-23 that hasn't the commit you mention below.


I had experienced the varnishes of  Gnome panel a long time ago, But
since then I
never experience it for at least half a year, aslo with  Chromium I
never encounter
such  symptoms as you mentioned.

The only thing I want with compositing is the fancy tranparency of
Emacs, switching to
compiz seems not to be a choice for me, compiz is somewhat over-bloated to me.


BTW, you probably meant (set-frame-parameter nil 'alpha 94).  Also, please
use report-emacs-bug for bugs like these.
Got it

I reverted to the version before this commit, but the bug in metacity remains.  
It is
probably a fluke that your meatcity works with>  that version.

just FYI,  it is this specific hunk of the commit that triggers the
(possible) bug of metacity
Just revert this hunk of the commit Emacs works as expected at least for me.

src/xterm.c:

@@ -489,14 +489,14 @@ x_set_frame_alpha (struct frame *f)
                        &data);

      if (rc == Success&&  actual != None)
-      if (*(unsigned long *)data == opac)
-       {
-         XFree ((void *) data);
-         x_uncatch_errors ();
-         return;
-       }
-      else
+      {
        XFree ((void *) data);
+       if (*(unsigned long *)data == opac)
+         {
+           x_uncatch_errors ();
+           return;
+         }
+      }
      x_uncatch_errors ();
    }

Ouch, this looks really bad. Not only is data accesses after it has been free:d, but we may be doing catch errors twice and uncatch only once.

I fixed this, see if it works with your metacity.  It doesn't for me.

        Jan D.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]