[subset] Correctly handle subsetting non-Unicode cmap subtables
diff --git a/Lib/fontTools/subset.py b/Lib/fontTools/subset.py
index a33d390..a4f0af2 100644
--- a/Lib/fontTools/subset.py
+++ b/Lib/fontTools/subset.py
@@ -1736,8 +1736,12 @@
                        for v,l in t.uvsDict.items())
       t.uvsDict = dict((v,l) for v,l in t.uvsDict.items() if l)
     else:
-      t.cmap = dict((u,g) for u,g in t.cmap.items()
-                    if g in s.glyphs_requested or u in s.unicodes_requested)
+      if t.isUnicode():
+        t.cmap = dict((u,g) for u,g in t.cmap.items()
+                      if g in s.glyphs_requested or u in s.unicodes_requested)
+      else:
+        t.cmap = dict((u,g) for u,g in t.cmap.items()
+                      if g in s.glyphs_requested)
   self.tables = [t for t in self.tables
                  if (t.cmap if t.format != 14 else t.uvsDict)]
   self.numSubTables = len(self.tables)