# # patch "ChangeLog" # from [5e7a948405d2d0889771ab84ac69999a5e1b9eb0] # to [7be1fad3755ff736a7a04f9033b3d8b8cc6a25f9] # # patch "automate.cc" # from [6634aeb4bc67911ff0ea7e08a6fdd12b5876f9e0] # to [57b3f30a50ae18e91ef62ed0310d7e69c9a7eec9] # --- ChangeLog +++ ChangeLog @@ -1,3 +1,8 @@ +2005-05-25 Timothy Brownawell + + * automate.cc ("automate stdio"): Fix block size limiting. + Honor "output.flush()" in commands. + 2005-05-24 Timothy Brownawell * automate.cc: Fix buffering for "automate stdio" --- automate.cc +++ automate.cc @@ -973,11 +973,20 @@ written+=__n; while(written>=last_call+call_every) { - if(on_write) on_write(call_every); + if(on_write) + on_write(call_every); last_call+=call_every; } return ret; } + virtual int sync() + { + int ret=char_stringbuf::sync(); + if(on_write) + on_write(-1); + last_call=written; + return ret; + } void set_on_write(boost::function1 x) { on_write = x; @@ -992,14 +1001,24 @@ int & pos, int size) { - s< constants::automate_stdio_size) + { + s<