From 61b5880559aafab38695e627ac31c41bc5540fe1 Mon Sep 17 00:00:00 2001 From: Arnaud Guignard Date: Mon, 12 Jan 2009 08:37:46 +0100 Subject: [PATCH] restore old std::cerr buffer to prevent segfault when exiting --- src/ncmpcpp.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/ncmpcpp.cpp b/src/ncmpcpp.cpp index 25ade9f4..d74c8561 100644 --- a/src/ncmpcpp.cpp +++ b/src/ncmpcpp.cpp @@ -355,6 +355,7 @@ int main(int argc, char *argv[]) // redirect std::cerr output to ~/.ncmpcpp/error.log file std::ofstream errorlog((config_dir + "error.log").c_str(), std::ios::app); + std::streambuf * cerr_buffer = std::cerr.rdbuf(); std::cerr.rdbuf(errorlog.rdbuf()); # ifdef HAVE_CURL_CURL_H @@ -3684,6 +3685,8 @@ int main(int argc, char *argv[]) // key mapping end } + // restore old cerr buffer + std::cerr.rdbuf(cerr_buffer); errorlog.close(); Mpd->Disconnect(); DestroyScreen();