diff options
author | Ezio Melotti <ezio.melotti@gmail.com> | 2012-11-09 11:51:30 +0100 |
---|---|---|
committer | Ezio Melotti <ezio.melotti@gmail.com> | 2012-11-09 11:51:30 +0100 |
commit | 90378b48077a1bb9a4805719b658312d7a35cbdd (patch) | |
tree | d2407d5b1ae83c78226a5a2ae8f496b4c3edcbf7 | |
parent | dc945e4943a17fc6f15e35ccef506ad75e878545 (diff) | |
parent | 956c6c2dabe893e5c389d3d84a614aae469851e3 (diff) | |
download | cpython-git-90378b48077a1bb9a4805719b658312d7a35cbdd.tar.gz |
#13301: merge with 3.3.
-rw-r--r-- | Misc/NEWS | 6 | ||||
-rwxr-xr-x | Tools/i18n/msgfmt.py | 6 |
2 files changed, 9 insertions, 3 deletions
@@ -316,6 +316,12 @@ Build - Issue #15819: Make sure we can build Python out-of-tree from a read-only source directory. (Somewhat related to issue #9860.) +Tools/Demos +----------- + +- Issue #13301: use ast.literal_eval() instead of eval() in Tools/i18n/msgfmt.py + Patch by Serhiy Storchaka. + Documentation ------------- diff --git a/Tools/i18n/msgfmt.py b/Tools/i18n/msgfmt.py index a5544424e2..7b3a81ff93 100755 --- a/Tools/i18n/msgfmt.py +++ b/Tools/i18n/msgfmt.py @@ -24,8 +24,9 @@ Options: Display version information and exit. """ -import sys import os +import sys +import ast import getopt import struct import array @@ -180,8 +181,7 @@ def make(filename, outfile): l = l.strip() if not l: continue - # XXX: Does this always follow Python escape semantics? - l = eval(l) + l = ast.literal_eval(l) if section == ID: msgid += l.encode(encoding) elif section == STR: |