diff --git a/src/client.c b/src/client.c
index 701cacd98f04521d15cc23370a5b8f217a9e6d62..418c3b90dab02bae780a09172817f3108aa14da2 100644
--- a/src/client.c
+++ b/src/client.c
@@ -873,6 +873,12 @@ clientGetWMNormalHints (Client * c, gboolean update)
         c->size->flags |= PMaxSize;
     }
     
+    if (!(c->size->flags & PBaseSize))
+    {
+	c->size->base_width = 0;
+	c->size->base_height = 0;
+    }
+
     if (!(c->size->flags & PMinSize))
     {
         if ((c->size->flags & PBaseSize))
diff --git a/src/poswin.c b/src/poswin.c
index 2b08486f8c753c997b568df8f93ddb47ddd70b18..3b07a4e8fa2916ee1121a0a4d327a8a87a6ff9d3 100644
--- a/src/poswin.c
+++ b/src/poswin.c
@@ -75,13 +75,23 @@ poswinSetPosition (Poswin * poswin, Client *c)
     
     x = frameX (c);
     y = frameY (c);
+    
     wsize = (c->width - c->size->base_width) / c->size->width_inc;
     hsize = (c->height - c->size->base_height) / c->size->height_inc;
+    
+    if (wsize < 0)
+    {
+        wsize = 0;
+    }
+    if (hsize < 0)
+    {
+        hsize = 0;
+    }
 
 #ifdef SHOW_POSITION
-    g_snprintf (label, 32, "(%ix%i) @ (%i,%i)", wsize, hsize, x, y);
+    g_snprintf (label, 32, "(%dx%d) @ (%i,%i)", wsize, hsize, x, y);
 #else
-    g_snprintf (label, 32, "(%ix%i)", wsize, hsize);
+    g_snprintf (label, 32, "(%dx%d)", wsize, hsize);
 #endif
     gtk_label_set_text (GTK_LABEL (poswin->label), label);
     gtk_widget_queue_draw (poswin->window);