diff --git a/draw/draw.c b/draw/draw.c
index 18e44be671e30145a271fdbd4224f738ea2d19f5..24368a1381e471f0c627f45737daf668cf27b7d2 100644
--- a/draw/draw.c
+++ b/draw/draw.c
@@ -101,15 +101,15 @@ void gfx_draw_circle(struct gfx_context_t *ctxt, coordinates_t c, int r, uint32_
 
         // Rotate
         if (d >= 2 * x) {
-            d -= (2 * x) - 1;
             x += 1;
+            d -= (2 * x) - 1;
         } else if (d < 2 * (r - y)) {
-            d += (2 * y) - 1;
             y -= 1;
+            d += (2 * y) - 1;
         } else {
-            d += 2 * (y - x - 1);
             y -= 1;
             x += 1;
+            d += 2 * (y - x - 1);
         }
     }
 }
\ No newline at end of file