11ae29591efbb29492ce05378909ccf4028d7c1eeBehdad Esfahbodfrom __future__ import print_function, division, absolute_import 230e691edd056ba22fa8970280e986747817bec3dBehdad Esfahbodfrom fontTools.misc.py23 import * 345d1f3b3b552297484bc2b8e9a2e999630bb5e50jvrimport sys 445d1f3b3b552297484bc2b8e9a2e999630bb5e50jvrtry: 545d1f3b3b552297484bc2b8e9a2e999630bb5e50jvr import MacOS 645d1f3b3b552297484bc2b8e9a2e999630bb5e50jvrexcept ImportError: 745d1f3b3b552297484bc2b8e9a2e999630bb5e50jvr MacOS = None 87ed91eca1eaa96b79eae780778e89bb9ec44c1eeBehdad Esfahbodfrom .py23 import * 945d1f3b3b552297484bc2b8e9a2e999630bb5e50jvr 1045d1f3b3b552297484bc2b8e9a2e999630bb5e50jvrdef _reverseString(s): 1145d1f3b3b552297484bc2b8e9a2e999630bb5e50jvr s = list(s) 1245d1f3b3b552297484bc2b8e9a2e999630bb5e50jvr s.reverse() 1318316aa769566eeb6f3f4a6ed2685fa8f8e861c2Behdad Esfahbod return strjoin(s) 1445d1f3b3b552297484bc2b8e9a2e999630bb5e50jvr 1545d1f3b3b552297484bc2b8e9a2e999630bb5e50jvr 1645d1f3b3b552297484bc2b8e9a2e999630bb5e50jvrdef getMacCreatorAndType(path): 1745d1f3b3b552297484bc2b8e9a2e999630bb5e50jvr if MacOS is not None: 1845d1f3b3b552297484bc2b8e9a2e999630bb5e50jvr fileCreator, fileType = MacOS.GetCreatorAndType(path) 1945d1f3b3b552297484bc2b8e9a2e999630bb5e50jvr if sys.byteorder == "little": 2045d1f3b3b552297484bc2b8e9a2e999630bb5e50jvr # work around bug in MacOS.GetCreatorAndType() on intel: 2145d1f3b3b552297484bc2b8e9a2e999630bb5e50jvr # http://bugs.python.org/issue1594 2245d1f3b3b552297484bc2b8e9a2e999630bb5e50jvr fileCreator = _reverseString(fileCreator) 2345d1f3b3b552297484bc2b8e9a2e999630bb5e50jvr fileType = _reverseString(fileType) 2445d1f3b3b552297484bc2b8e9a2e999630bb5e50jvr return fileCreator, fileType 2545d1f3b3b552297484bc2b8e9a2e999630bb5e50jvr else: 2645d1f3b3b552297484bc2b8e9a2e999630bb5e50jvr return None, None 2745d1f3b3b552297484bc2b8e9a2e999630bb5e50jvr 2845d1f3b3b552297484bc2b8e9a2e999630bb5e50jvr 2945d1f3b3b552297484bc2b8e9a2e999630bb5e50jvrdef setMacCreatorAndType(path, fileCreator, fileType): 3045d1f3b3b552297484bc2b8e9a2e999630bb5e50jvr if MacOS is not None: 3145d1f3b3b552297484bc2b8e9a2e999630bb5e50jvr if sys.byteorder == "little": 3245d1f3b3b552297484bc2b8e9a2e999630bb5e50jvr # work around bug in MacOS.SetCreatorAndType() on intel: 3345d1f3b3b552297484bc2b8e9a2e999630bb5e50jvr # http://bugs.python.org/issue1594 3445d1f3b3b552297484bc2b8e9a2e999630bb5e50jvr fileCreator = _reverseString(fileCreator) 3545d1f3b3b552297484bc2b8e9a2e999630bb5e50jvr fileType = _reverseString(fileType) 3645d1f3b3b552297484bc2b8e9a2e999630bb5e50jvr MacOS.SetCreatorAndType(path, fileCreator, fileType) 37