Revert "Use ast.literal_eval to implement safeEval"
This reverts commit f5d123be5e342d91c2fa964ddae2844bc633d08e.
Fixes https://github.com/behdad/fonttools/issues/164
See issue for details.
diff --git a/Lib/fontTools/misc/textTools.py b/Lib/fontTools/misc/textTools.py
index d6e6a2f..394ef7c 100644
--- a/Lib/fontTools/misc/textTools.py
+++ b/Lib/fontTools/misc/textTools.py
@@ -3,11 +3,13 @@
from __future__ import print_function, division, absolute_import
from fontTools.misc.py23 import *
-import ast
import string
-safeEval = ast.literal_eval
+def safeEval(data, eval=eval):
+ """A (kindof) safe replacement for eval."""
+ return eval(data, {"__builtins__":{}})
+
def readHex(content):
"""Convert a list of hex strings to binary data."""