[Xfce4-commits] <xfwm4:master> Fix crash when compositor is compiled in but disabled.

Alistair Buxton noreply at xfce.org
Wed Dec 11 22:04:01 CET 2013


Updating branch refs/heads/master
         to ce5f008584302362f6374201432f91e3d950715d (commit)
       from 51a982b74c9b48b9ae20d712127187119dad7a05 (commit)

commit ce5f008584302362f6374201432f91e3d950715d
Author: Alistair Buxton <a.j.buxton at gmail.com>
Date:   Tue Dec 10 01:32:05 2013 +0000

    Fix crash when compositor is compiled in but disabled.
    
    If user attempts to zoom in when compositor is disabled,
    don't do anything. Also handle possible divide by zero
    if the refresh rate is reported as zero.

 src/compositor.c |    2 ++
 src/events.c     |    6 ++++--
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/src/compositor.c b/src/compositor.c
index 01ff05f..843ce65 100644
--- a/src/compositor.c
+++ b/src/compositor.c
@@ -3056,6 +3056,8 @@ compositorZoomIn (ScreenInfo *screen_info, XButtonEvent *ev)
         if (screen_info->display_info->have_xrandr)
         {
             timeout_rate = screen_info->refresh_rate/2;
+            if(timeout_rate < 1)
+                timeout_rate = 30;
         }
 #endif /* HAVE_RANDR */
         screen_info->zoom_timeout_id = g_timeout_add ((1000/timeout_rate), zoom_timeout_cb, screen_info);
diff --git a/src/events.c b/src/events.c
index 3701d75..e83bde9 100644
--- a/src/events.c
+++ b/src/events.c
@@ -904,11 +904,13 @@ handleButtonPress (DisplayInfo *display_info, XButtonEvent * ev)
             edgeButton (c, part, ev);
         }
 #ifdef HAVE_COMPOSITOR
-        else if ((ev->button == Button4) && (state) && (state == screen_info->params->easy_click))
+        else if ((ev->button == Button4) && (state) && (state == screen_info->params->easy_click)
+                  && (screen_info->compositor_active))
         {
             compositorZoomIn(screen_info, ev);
         }
-        else if ((ev->button == Button5) && (state) && (state == screen_info->params->easy_click))
+        else if ((ev->button == Button5) && (state) && (state == screen_info->params->easy_click)
+                  && (screen_info->compositor_active))
         {
             compositorZoomOut(screen_info, ev);
         }


More information about the Xfce4-commits mailing list