diff options
author | Bob Ippolito <bob@redivi.com> | 2015-10-27 08:31:48 -0700 |
---|---|---|
committer | Bob Ippolito <bob@redivi.com> | 2015-10-27 08:31:48 -0700 |
commit | b979a80722bfbcecc6cde366449e1e0b605c51b6 (patch) | |
tree | 1d977c0ea878cc2ad27aeb14e51cdf0ec5dc9857 /simplejson/encoder.py | |
parent | 82fdecb6a892579bde16f43b4b983b9dce6c3643 (diff) | |
download | simplejson-b979a80722bfbcecc6cde366449e1e0b605c51b6.tar.gz |
Fix issue with iterable_as_array and indent option, closes #128v3.8.1
Diffstat (limited to 'simplejson/encoder.py')
-rw-r--r-- | simplejson/encoder.py | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/simplejson/encoder.py b/simplejson/encoder.py index d771bb4..5b9bda7 100644 --- a/simplejson/encoder.py +++ b/simplejson/encoder.py @@ -496,10 +496,14 @@ def _make_iterencode(markers, _default, _encoder, _indent, _floatstr, chunks = _iterencode(value, _current_indent_level) for chunk in chunks: yield chunk - if newline_indent is not None: - _current_indent_level -= 1 - yield '\n' + (_indent * _current_indent_level) - yield ']' + if first: + # iterable_as_array misses the fast path at the top + yield '[]' + else: + if newline_indent is not None: + _current_indent_level -= 1 + yield '\n' + (_indent * _current_indent_level) + yield ']' if markers is not None: del markers[markerid] |