From 0cbd12a5655ee5c11a093cde6adaddefca15d12f Mon Sep 17 00:00:00 2001 From: Teo Mrnjavac Date: Fri, 18 Mar 2016 16:08:58 +0100 Subject: [PATCH] Attach the GDB backtrace to the report. --- src/crashreporter/main.cpp | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/src/crashreporter/main.cpp b/src/crashreporter/main.cpp index c30c30088..581e92019 100644 --- a/src/crashreporter/main.cpp +++ b/src/crashreporter/main.cpp @@ -127,10 +127,15 @@ QByteArray gzip_compress(const QByteArray& data) } - +#ifdef Q_OS_LINUX +const char* k_usage = + "Usage:\n" + " CrashReporter \n"; +#else const char* k_usage = "Usage:\n" " CrashReporter \n"; +#endif int main( int argc, char* argv[] ) { @@ -164,7 +169,11 @@ int main( int argc, char* argv[] ) QApplication app( argc, argv ); CalamaresUtils::installTranslator( QLocale::system(), QString(), &app ); +#ifdef Q_OS_LINUX + if ( app.arguments().size() != 3 ) +#else if ( app.arguments().size() != 2 ) +#endif { std::cout << k_usage; return 1; @@ -237,6 +246,16 @@ int main( int argc, char* argv[] ) QFileInfo( logFile ).fileName().toUtf8()); logFile.close(); +#ifdef Q_OS_LINUX + QFile backtraceFile( app.arguments().value( 2 ) ); + backtraceFile.open( QFile::ReadOnly ); + reporter.setReportData( "upload_file_linux_backtrace", + gzip_compress( backtraceFile.readAll() ), + "application/x-gzip", + QFileInfo( backtraceFile ).fileName().toUtf8()); + backtraceFile.close(); +#endif + reporter.show(); return app.exec();