Commit b47192f0 by Justin Bassett Committed by Wenzel Jakob

fix detail::pythonbuf::overflow()'s return value to return not_eof(c) (#1479)

parent d0c1d286
......@@ -34,7 +34,7 @@ private:
*pptr() = traits_type::to_char_type(c);
pbump(1);
}
return sync() ? traits_type::not_eof(c) : traits_type::eof();
return sync() == 0 ? traits_type::not_eof(c) : traits_type::eof();
}
int sync() {
......
......@@ -53,6 +53,16 @@ def test_captured(capsys):
assert stdout == ''
assert stderr == msg
def test_captured_large_string(capsys):
# Make this bigger than the buffer used on the C++ side: 1024 chars
msg = "I've been redirected to Python, I hope!"
msg = msg * (1024 // len(msg) + 1)
m.captured_output_default(msg)
stdout, stderr = capsys.readouterr()
assert stdout == msg
assert stderr == ''
def test_guard_capture(capsys):
msg = "I've been redirected to Python, I hope!"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment