diff --git a/dlls/comctl32/treeview.c b/dlls/comctl32/treeview.c
index a3299c0..997a732 100644
--- a/dlls/comctl32/treeview.c
+++ b/dlls/comctl32/treeview.c
@@ -1717,23 +1717,23 @@
     if (oldWidth != infoPtr->normalImageWidth ||
         oldHeight != infoPtr->normalImageHeight)
     {
-        BOOL bRecalcVisable = FALSE;
+        BOOL bRecalcVisible = FALSE;
 
         if (oldHeight != infoPtr->normalImageHeight &&
             !infoPtr->bHeightSet)
         {
             infoPtr->uItemHeight = TREEVIEW_NaturalHeight(infoPtr);
-            bRecalcVisable = TRUE;
+            bRecalcVisible = TRUE;
         }
 
         if (infoPtr->normalImageWidth > MINIMUM_INDENT &&
             infoPtr->normalImageWidth != infoPtr->uIndent)
         {
             infoPtr->uIndent = infoPtr->normalImageWidth;
-            bRecalcVisable = TRUE;
+            bRecalcVisible = TRUE;
         }
 
-        if (bRecalcVisable)
+        if (bRecalcVisible)
             TREEVIEW_RecalculateVisibleOrder(infoPtr, NULL);
 
        TREEVIEW_UpdateSubTree(infoPtr, infoPtr->root);
diff --git a/dlls/comctl32/updown.c b/dlls/comctl32/updown.c
index 72a5c6c..8950b27 100644
--- a/dlls/comctl32/updown.c
+++ b/dlls/comctl32/updown.c
@@ -511,7 +511,7 @@
             x  = budRect.right+DEFAULT_XSEP;
         }
 
-        /* first adjust the buddy to accomodate the up/down */
+        /* first adjust the buddy to accommodate the up/down */
         SetWindowPos(infoPtr->Buddy, 0, budRect.left, budRect.top,
                      budRect.right  - budRect.left, budRect.bottom - budRect.top,
                      SWP_NOACTIVATE|SWP_NOZORDER);
@@ -524,7 +524,7 @@
         /*
          * If the updown has a buddy border, it has to overlap with the buddy
          * to look as if it is integrated with the buddy control.
-         * We nudge the control or change it size to overlap.
+         * We nudge the control or change its size to overlap.
          */
         if (UPDOWN_HasBuddyBorder(infoPtr)) {
             if(dwStyle & UDS_ALIGNLEFT)
