Make this work on Mac as well (where Type and Creator are bytes instead of str).
diff --git a/Lib/binhex.py b/Lib/binhex.py
index 0dfa475..a56a8c8 100644
--- a/Lib/binhex.py
+++ b/Lib/binhex.py
@@ -192,7 +192,12 @@
if nl > 63:
raise Error, 'Filename too long'
d = bytes([nl]) + name.encode("latin-1") + b'\0'
- d2 = bytes(finfo.Type, "ascii") + bytes(finfo.Creator, "ascii")
+ tp, cr = finfo.Type, finfo.Creator
+ if isinstance(tp, str):
+ tp = tp.encode("latin-1")
+ if isinstance(cr, str):
+ cr = cr.encode("latin-1")
+ d2 = tp + cr
# Force all structs to be packed with big-endian
d3 = struct.pack('>h', finfo.Flags)