[MediaWiki-commits] [Gerrit] Better error reporting for GCC - change (operations...incremental)
Petr Onderka has uploaded a new change for review. https://gerrit.wikimedia.org/r/85189 Change subject: Better error reporting for GCC .. Better error reporting for GCC Change-Id: Icab577fcc7a61e1570dbb884a9e602d603cdf76f --- M main.cpp 1 file changed, 23 insertions(+), 0 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/operations/dumps/incremental refs/changes/89/85189/1 diff --git a/main.cpp b/main.cpp index 26fba7c..78e5b16 100644 --- a/main.cpp +++ b/main.cpp @@ -285,8 +285,31 @@ diffReader.Read(); } +#ifdef __GNUC__ +void terminate_handler() +{ +void** buffer = new void*[50]; +int count = backtrace(buffer, 50); +backtrace_symbols_fd(buffer, count, STDERR_FILENO); + +auto ptr = std::current_exception(); +try +{ +std::rethrow_exception(ptr); +} +catch (std::exception p) +{ +std::cerr p.what() \n; +} +} +#endif + int main(int argc, const char* argv[]) { +#ifdef __GNUC__ +std::set_terminate(terminate_handler); +#endif + if (argc == 1) { printUsage(); -- To view, visit https://gerrit.wikimedia.org/r/85189 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Icab577fcc7a61e1570dbb884a9e602d603cdf76f Gerrit-PatchSet: 1 Gerrit-Project: operations/dumps/incremental Gerrit-Branch: gsoc Gerrit-Owner: Petr Onderka gsv...@gmail.com ___ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits
[MediaWiki-commits] [Gerrit] Better error reporting for GCC - change (operations...incremental)
Petr Onderka has submitted this change and it was merged. Change subject: Better error reporting for GCC .. Better error reporting for GCC Change-Id: Icab577fcc7a61e1570dbb884a9e602d603cdf76f --- M main.cpp 1 file changed, 25 insertions(+), 0 deletions(-) Approvals: Petr Onderka: Verified; Looks good to me, approved diff --git a/main.cpp b/main.cpp index 26fba7c..2baff49 100644 --- a/main.cpp +++ b/main.cpp @@ -285,8 +285,33 @@ diffReader.Read(); } +#ifdef __GNUC__ +#include execinfo.h + +void terminate_handler() +{ +void** buffer = new void*[50]; +int count = backtrace(buffer, 50); +backtrace_symbols_fd(buffer, count, STDERR_FILENO); + +auto ptr = std::current_exception(); +try +{ +std::rethrow_exception(ptr); +} +catch (std::exception p) +{ +std::cerr p.what() \n; +} +} +#endif + int main(int argc, const char* argv[]) { +#ifdef __GNUC__ +std::set_terminate(terminate_handler); +#endif + if (argc == 1) { printUsage(); -- To view, visit https://gerrit.wikimedia.org/r/85189 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: merged Gerrit-Change-Id: Icab577fcc7a61e1570dbb884a9e602d603cdf76f Gerrit-PatchSet: 2 Gerrit-Project: operations/dumps/incremental Gerrit-Branch: gsoc Gerrit-Owner: Petr Onderka gsv...@gmail.com Gerrit-Reviewer: Petr Onderka gsv...@gmail.com ___ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits