Skip to content

Commit 6c59d6c

Browse files
committed
Merge branch 'multi_inputs' of https://github.com/s-ball/cpython into multi_inputs
2 parents a9e67b4 + 0bc4ad3 commit 6c59d6c

File tree

1 file changed

+8
-10
lines changed

1 file changed

+8
-10
lines changed

Tools/i18n/msgfmt.py

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -108,22 +108,16 @@ def make(filenames, outfile):
108108
outfile is a string for the name of an input file or None.
109109
110110
If it is not None, the output file receives a merge of the input files
111-
If it is None, then each input file is separately compiled into its
112-
corresponding output file (same name with po replaced with mo).
111+
If it is None, then filenames must be a string and the name of the output
112+
file is obtained by replacing the po extension with mo.
113113
Both ways are for compatibility reasons with previous behaviour.
114114
"""
115115
messages = {}
116116
if isinstance(filenames, str):
117117
infile, outfile = get_names(filenames, outfile)
118118
process(infile, messages)
119119
elif outfile is None:
120-
for filename in filenames:
121-
infile, outfile = get_names(filename, None)
122-
messages.clear()
123-
process(infile, messages)
124-
output = generate(messages)
125-
writefile(outfile, output)
126-
return
120+
raise TypeError("outfile cannot be None with more than one infile")
127121
else:
128122
for filename in filenames:
129123
infile, _ = get_names(filename, outfile)
@@ -272,7 +266,11 @@ def main(argv):
272266
print('No input file given', file=sys.stderr)
273267
print("Try `msgfmt --help' for more information.", file=sys.stderr)
274268
return
275-
make(args, outfile)
269+
if outfile is None:
270+
for filename in args:
271+
make(filename, None)
272+
else:
273+
make(args, outfile)
276274

277275

278276
if __name__ == '__main__':

0 commit comments

Comments
 (0)