diff --git a/src/compositor.c b/src/compositor.c
index b5bfc8bebfc04edf34c7ba8769ab0de17efd9bdd..9a3bbad381b5a306c0b32c1473527f2855549372 100644
--- a/src/compositor.c
+++ b/src/compositor.c
@@ -1985,7 +1985,7 @@ resize_win (CWindow *cw, gint x, gint y, gint width, gint height, gint bw, gbool
         cw->extents = None;
     }
 
-    if ((cw->attr.width != width) || (cw->attr.height != height))
+    if ((cw->attr.width != width) || (cw->attr.height != height) || shape_notify)
     {
 #if HAVE_NAME_WINDOW_PIXMAP
         if (cw->name_window_pixmap)
@@ -2007,7 +2007,8 @@ resize_win (CWindow *cw, gint x, gint y, gint width, gint height, gint bw, gbool
         }
     }
 
-    if ((cw->attr.width != width) || (cw->attr.height != height) || (cw->attr.x != x) || (cw->attr.y != y))
+    if ((cw->attr.width != width) || (cw->attr.height != height) || 
+        (cw->attr.x != x) || (cw->attr.y != y) || shape_notify)
     {
         if (cw->borderSize)
         {