Two ancient and obscure bugs found and fixed by Donovan Preston (these
could be responsible for various unexplained problems with Python/OSA
interaction over the years):
- Enum values were passed as their string counterparts. Most applications
don't seem to mind this, but some do (InDesign).
- Attributes have never worked (!), as they were incorrectly passed
as parameters. Apparently nobody uses them much:-)
diff --git a/Lib/plat-mac/aetools.py b/Lib/plat-mac/aetools.py
index 79d6958..8ac293d 100644
--- a/Lib/plat-mac/aetools.py
+++ b/Lib/plat-mac/aetools.py
@@ -92,7 +92,7 @@
for key, value in parameters.items():
packkey(ae, key, value)
for key, value in attributes.items():
- packkey(ae, key, value)
+ ae.AEPutAttributeDesc(key, pack(value))
#
# Support routine for automatically generated Suite interfaces
@@ -116,7 +116,7 @@
v = arguments[key]
ok = edict.values()
if edict.has_key(v):
- arguments[key] = edict[v]
+ arguments[key] = Enum(edict[v])
elif not v in ok:
raise TypeError, 'Unknown enumerator: %s'%v