Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 956c6c2

Browse files
committed
#13301: merge with 3.2.
2 parents a3ad8a0 + 9bf379e commit 956c6c2

2 files changed

Lines changed: 9 additions & 3 deletions

File tree

Misc/NEWS

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -227,6 +227,12 @@ Build
227227
- Issue #15819: Make sure we can build Python out-of-tree from a read-only
228228
source directory. (Somewhat related to issue #9860.)
229229

230+
Tools/Demos
231+
-----------
232+
233+
- Issue #13301: use ast.literal_eval() instead of eval() in Tools/i18n/msgfmt.py
234+
Patch by Serhiy Storchaka.
235+
230236
Documentation
231237
-------------
232238

Tools/i18n/msgfmt.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,9 @@
2424
Display version information and exit.
2525
"""
2626

27-
import sys
2827
import os
28+
import sys
29+
import ast
2930
import getopt
3031
import struct
3132
import array
@@ -180,8 +181,7 @@ def make(filename, outfile):
180181
l = l.strip()
181182
if not l:
182183
continue
183-
# XXX: Does this always follow Python escape semantics?
184-
l = eval(l)
184+
l = ast.literal_eval(l)
185185
if section == ID:
186186
msgid += l.encode(encoding)
187187
elif section == STR:

0 commit comments

Comments
 (0)