diff --git a/src/libvterm/include/vterm.h b/src/libvterm/include/vterm.h
index 85fb8e5..e5887c8 100644
--- a/src/libvterm/include/vterm.h
+++ b/src/libvterm/include/vterm.h
@@ -528,7 +528,7 @@
     unsigned int font      : 4; /* 0 to 9 */
     unsigned int dwl       : 1; /* On a DECDWL or DECDHL line */
     unsigned int dhl       : 2; /* On a DECDHL line (1=top 2=bottom) */
-    unsigned int smallfont : 1;
+    unsigned int small     : 1;
     unsigned int baseline  : 2;
 } VTermScreenCellAttrs;
 
diff --git a/src/libvterm/src/pen.c b/src/libvterm/src/pen.c
index 03c7568..1c6cd4e 100644
--- a/src/libvterm/src/pen.c
+++ b/src/libvterm/src/pen.c
@@ -181,7 +181,7 @@
   state->pen.conceal = 0;   setpenattr_bool(state, VTERM_ATTR_CONCEAL, 0);
   state->pen.strike = 0;    setpenattr_bool(state, VTERM_ATTR_STRIKE, 0);
   state->pen.font = 0;      setpenattr_int (state, VTERM_ATTR_FONT, 0);
-  state->pen.smallfont = 0; setpenattr_bool(state, VTERM_ATTR_SMALL, 0);
+  state->pen.small = 0;     setpenattr_bool(state, VTERM_ATTR_SMALL, 0);
   state->pen.baseline = 0;  setpenattr_int (state, VTERM_ATTR_BASELINE, 0);
 
   state->pen.fg = state->default_fg;  setpenattr_col(state, VTERM_ATTR_FOREGROUND, state->default_fg);
@@ -204,7 +204,7 @@
     setpenattr_bool(state, VTERM_ATTR_CONCEAL,   state->pen.conceal);
     setpenattr_bool(state, VTERM_ATTR_STRIKE,    state->pen.strike);
     setpenattr_int (state, VTERM_ATTR_FONT,      state->pen.font);
-    setpenattr_bool(state, VTERM_ATTR_SMALL,     state->pen.smallfont);
+    setpenattr_bool(state, VTERM_ATTR_SMALL,     state->pen.small);
     setpenattr_int (state, VTERM_ATTR_BASELINE,  state->pen.baseline);
 
     setpenattr_col( state, VTERM_ATTR_FOREGROUND, state->pen.fg);
@@ -454,12 +454,12 @@
     case 73: // Superscript
     case 74: // Subscript
     case 75: // Superscript/subscript off
-      state->pen.smallfont = (arg != 75);
+      state->pen.small = (arg != 75);
       state->pen.baseline =
         (arg == 73) ? VTERM_BASELINE_RAISE :
         (arg == 74) ? VTERM_BASELINE_LOWER :
                       VTERM_BASELINE_NORMAL;
-      setpenattr_bool(state, VTERM_ATTR_SMALL,    state->pen.smallfont);
+      setpenattr_bool(state, VTERM_ATTR_SMALL,    state->pen.small);
       setpenattr_int (state, VTERM_ATTR_BASELINE, state->pen.baseline);
       break;
 
@@ -560,7 +560,7 @@
 
   argi = vterm_state_getpen_color(&state->pen.bg, argi, args, FALSE);
 
-  if(state->pen.smallfont) {
+  if(state->pen.small) {
     if(state->pen.baseline == VTERM_BASELINE_RAISE)
       args[argi++] = 73;
     else if(state->pen.baseline == VTERM_BASELINE_LOWER)
@@ -614,7 +614,7 @@
     return 1;
 
   case VTERM_ATTR_SMALL:
-    val->boolean = state->pen.smallfont;
+    val->boolean = state->pen.small;
     return 1;
 
   case VTERM_ATTR_BASELINE:
diff --git a/src/libvterm/src/rect.h b/src/libvterm/src/rect.h
index 5cbf75a..2114f24 100644
--- a/src/libvterm/src/rect.h
+++ b/src/libvterm/src/rect.h
@@ -35,13 +35,13 @@
          (a->end_col   == b->end_col);
 }
 
-/* True if smallrect is contained entirely within big */
-static int rect_contains(VTermRect *big, VTermRect *smallrect)
+/* True if small is contained entirely within big */
+static int rect_contains(VTermRect *big, VTermRect *small)
 {
-  if(smallrect->start_row < big->start_row) return 0;
-  if(smallrect->start_col < big->start_col) return 0;
-  if(smallrect->end_row   > big->end_row)   return 0;
-  if(smallrect->end_col   > big->end_col)   return 0;
+  if(small->start_row < big->start_row) return 0;
+  if(small->start_col < big->start_col) return 0;
+  if(small->end_row   > big->end_row)   return 0;
+  if(small->end_col   > big->end_col)   return 0;
   return 1;
 }
 
diff --git a/src/libvterm/src/screen.c b/src/libvterm/src/screen.c
index ecaadb8..069306a 100644
--- a/src/libvterm/src/screen.c
+++ b/src/libvterm/src/screen.c
@@ -26,7 +26,7 @@
   unsigned int conceal   : 1;
   unsigned int strike    : 1;
   unsigned int font      : 4; /* 0 to 9 */
-  unsigned int smallfont : 1;
+  unsigned int small     : 1;
   unsigned int baseline  : 2;
 
   /* Extra state storage that isn't strictly pen-related */
@@ -446,7 +446,7 @@
     screen->pen.bg = val->color;
     return 1;
   case VTERM_ATTR_SMALL:
-    screen->pen.smallfont = val->boolean;
+    screen->pen.small = val->boolean;
     return 1;
   case VTERM_ATTR_BASELINE:
     screen->pen.baseline = val->number;
@@ -700,7 +700,7 @@
         dst->pen.conceal   = src->attrs.conceal;
         dst->pen.strike    = src->attrs.strike;
         dst->pen.font      = src->attrs.font;
-        dst->pen.smallfont = src->attrs.smallfont;
+        dst->pen.small     = src->attrs.small;
         dst->pen.baseline  = src->attrs.baseline;
 
         dst->pen.fg = src->fg;
@@ -1014,7 +1014,7 @@
   cell->attrs.conceal   = intcell->pen.conceal;
   cell->attrs.strike    = intcell->pen.strike;
   cell->attrs.font      = intcell->pen.font;
-  cell->attrs.smallfont = intcell->pen.smallfont;
+  cell->attrs.small     = intcell->pen.small;
   cell->attrs.baseline  = intcell->pen.baseline;
 
   cell->attrs.dwl = intcell->pen.dwl;
@@ -1158,7 +1158,7 @@
     return 1;
   if((attrs & VTERM_ATTR_BACKGROUND_MASK) && !vterm_color_is_equal(&a->pen.bg, &b->pen.bg))
     return 1;
-  if((attrs & VTERM_ATTR_SMALL_MASK)    && (a->pen.smallfont != b->pen.smallfont))
+  if((attrs & VTERM_ATTR_SMALL_MASK)    && (a->pen.small != b->pen.small))
     return 1;
   if((attrs & VTERM_ATTR_BASELINE_MASK)    && (a->pen.baseline != b->pen.baseline))
     return 1;
diff --git a/src/libvterm/src/vterm_internal.h b/src/libvterm/src/vterm_internal.h
index d43eaa8..0e389d0 100644
--- a/src/libvterm/src/vterm_internal.h
+++ b/src/libvterm/src/vterm_internal.h
@@ -60,7 +60,7 @@
   unsigned int conceal:1;
   unsigned int strike:1;
   unsigned int font:4; /* To store 0-9 */
-  unsigned int smallfont:1;
+  unsigned int small:1;
   unsigned int baseline:2;
 };
 
diff --git a/src/libvterm/t/harness.c b/src/libvterm/t/harness.c
index 859503f..d12c120 100644
--- a/src/libvterm/t/harness.c
+++ b/src/libvterm/t/harness.c
@@ -410,7 +410,7 @@
   int conceal;
   int strike;
   int font;
-  int smallfont;
+  int small;
   int baseline;
   VTermColor foreground;
   VTermColor background;
@@ -443,7 +443,7 @@
     state_pen.font = val->number;
     break;
   case VTERM_ATTR_SMALL:
-    state_pen.smallfont = val->boolean;
+    state_pen.small = val->boolean;
     break;
   case VTERM_ATTR_BASELINE:
     state_pen.baseline = val->number;
@@ -1015,11 +1015,11 @@
         }
         else if(streq(linep, "small")) {
           vterm_state_get_penattr(state, VTERM_ATTR_SMALL, &val);
-          if(val.boolean != state_pen.smallfont)
+          if(val.boolean != state_pen.small)
             printf("! pen small mismatch; state=%s, event=%s\n",
-                BOOLSTR(val.boolean), BOOLSTR(state_pen.smallfont));
+                BOOLSTR(val.boolean), BOOLSTR(state_pen.small));
           else
-            printf("%s\n", BOOLSTR(state_pen.smallfont));
+            printf("%s\n", BOOLSTR(state_pen.small));
         }
         else if(streq(linep, "baseline")) {
           vterm_state_get_penattr(state, VTERM_ATTR_BASELINE, &val);
@@ -1160,7 +1160,7 @@
         if(cell.attrs.blink)     printf("K");
         if(cell.attrs.reverse)   printf("R");
         if(cell.attrs.font)      printf("F%d", cell.attrs.font);
-        if(cell.attrs.smallfont) printf("S");
+        if(cell.attrs.small)     printf("S");
         if(cell.attrs.baseline)  printf(
             cell.attrs.baseline == VTERM_BASELINE_RAISE ? "^" :
                                                           "_");
diff --git a/src/os_win32.h b/src/os_win32.h
index 3cc0f47..7f9ee8d 100644
--- a/src/os_win32.h
+++ b/src/os_win32.h
@@ -86,6 +86,10 @@
 #endif
 #ifndef PROTO
 # include <windows.h>
+
+// Weird: rpcndr.h defines "small" to "char", which causes trouble
+#undef small
+
 # ifndef SM_CXPADDEDBORDER
 #  define SM_CXPADDEDBORDER     92
 # endif
diff --git a/src/version.c b/src/version.c
index 947f653..8d690ca 100644
--- a/src/version.c
+++ b/src/version.c
@@ -696,6 +696,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    781,
+/**/
     780,
 /**/
     779,
