diff options
-rw-r--r-- | apt-private/private-json-hooks.cc | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/apt-private/private-json-hooks.cc b/apt-private/private-json-hooks.cc index 7991a7d77..6bf70b1c6 100644 --- a/apt-private/private-json-hooks.cc +++ b/apt-private/private-json-hooks.cc @@ -11,6 +11,7 @@ #include <apt-pkg/macros.h> #include <apt-pkg/strutl.h> #include <apt-private/private-json-hooks.h> +#include <apt-private/private-output.h> #include <iomanip> #include <ostream> @@ -335,6 +336,13 @@ bool RunJsonHook(std::string const &option, std::string const &method, const cha return true; Opts = Opts->Child; + // Flush output before calling hooks + std::clog.flush(); + std::cerr.flush(); + std::cout.flush(); + c2out.flush(); + c1out.flush(); + sighandler_t old_sigpipe = signal(SIGPIPE, SIG_IGN); sighandler_t old_sigint = signal(SIGINT, SIG_IGN); sighandler_t old_sigquit = signal(SIGQUIT, SIG_IGN); |