summaryrefslogtreecommitdiffstats
path: root/lib/Plugins
diff options
context:
space:
mode:
authorDenys Vlasenko <vda.linux@googlemail.com>2009-10-09 12:57:59 +0200
committerDenys Vlasenko <vda.linux@googlemail.com>2009-10-09 12:57:59 +0200
commitb0d2f3c7f257be07bbf8af8e963335127ef43d65 (patch)
treeae488263112c9a81cda06066a447c7bf03180dc1 /lib/Plugins
parent6cc5b01813ba87e4a68ed848f91a6a3d573af0f6 (diff)
downloadabrt-b0d2f3c7f257be07bbf8af8e963335127ef43d65.tar.gz
abrt-b0d2f3c7f257be07bbf8af8e963335127ef43d65.tar.xz
abrt-b0d2f3c7f257be07bbf8af8e963335127ef43d65.zip
*: add "force" param to CreateReport dbus call. If !0, regenerates backtrace
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'lib/Plugins')
-rw-r--r--lib/Plugins/CCpp.cpp17
-rw-r--r--lib/Plugins/CCpp.h2
-rw-r--r--lib/Plugins/FileTransfer.cpp2
-rw-r--r--lib/Plugins/Kerneloops.h2
-rw-r--r--lib/Plugins/Python.h2
5 files changed, 13 insertions, 12 deletions
diff --git a/lib/Plugins/CCpp.cpp b/lib/Plugins/CCpp.cpp
index c054c781..a2665ed4 100644
--- a/lib/Plugins/CCpp.cpp
+++ b/lib/Plugins/CCpp.cpp
@@ -578,7 +578,7 @@ static bool DebuginfoCheckPolkit(int uid)
}
-void CAnalyzerCCpp::CreateReport(const std::string& pDebugDumpDir)
+void CAnalyzerCCpp::CreateReport(const std::string& pDebugDumpDir, int force)
{
update_client(_("Starting report creation..."));
@@ -588,18 +588,19 @@ void CAnalyzerCCpp::CreateReport(const std::string& pDebugDumpDir)
CDebugDump dd;
dd.Open(pDebugDumpDir);
- bool bt_exists = dd.Exist(FILENAME_BACKTRACE);
- if (bt_exists)
+ if (!force)
{
- dd.Close(); /* do not keep dir locked longer than needed */
- return; /* already done */
+ bool bt_exists = dd.Exist(FILENAME_BACKTRACE);
+ if (bt_exists)
+ {
+ return; /* backtrace already exists */
+ }
}
dd.LoadText(FILENAME_PACKAGE, package);
dd.LoadText(FILENAME_UID, UID);
- dd.Close();
-
+ dd.Close(); /* do not keep dir locked longer than needed */
map_plugin_settings_t settings = GetSettings();
if (settings["InstallDebuginfo"] == "yes" &&
@@ -609,7 +610,7 @@ void CAnalyzerCCpp::CreateReport(const std::string& pDebugDumpDir)
}
else
{
- warn_client(_("Skipping debuginfo installation"));
+ VERB1 log(_("Skipping debuginfo installation"));
}
GetBacktrace(pDebugDumpDir, backtrace);
diff --git a/lib/Plugins/CCpp.h b/lib/Plugins/CCpp.h
index 92b6bab7..3fbe0b9e 100644
--- a/lib/Plugins/CCpp.h
+++ b/lib/Plugins/CCpp.h
@@ -38,7 +38,7 @@ class CAnalyzerCCpp : public CAnalyzer
CAnalyzerCCpp();
virtual std::string GetLocalUUID(const std::string& pDebugDumpDir);
virtual std::string GetGlobalUUID(const std::string& pDebugDumpDir);
- virtual void CreateReport(const std::string& pDebugDumpDir);
+ virtual void CreateReport(const std::string& pDebugDumpDir, int force);
virtual void Init();
virtual void DeInit();
virtual void SetSettings(const map_plugin_settings_t& pSettings);
diff --git a/lib/Plugins/FileTransfer.cpp b/lib/Plugins/FileTransfer.cpp
index 287eb399..3492156f 100644
--- a/lib/Plugins/FileTransfer.cpp
+++ b/lib/Plugins/FileTransfer.cpp
@@ -197,7 +197,7 @@ static void create_tar(const char * archive_name, const char * directory)
{
return;
}
- tar_append_tree(tar, (char *)directory, ".");
+ tar_append_tree(tar, (char *)directory, (char*)".");
tar_close(tar);
}
diff --git a/lib/Plugins/Kerneloops.h b/lib/Plugins/Kerneloops.h
index 1be58fc6..13fb0098 100644
--- a/lib/Plugins/Kerneloops.h
+++ b/lib/Plugins/Kerneloops.h
@@ -39,7 +39,7 @@ class CAnalyzerKerneloops : public CAnalyzer
public:
virtual std::string GetLocalUUID(const std::string& pDebugDumpDir);
virtual std::string GetGlobalUUID(const std::string& pDebugDumpDir);
- virtual void CreateReport(const std::string& pDebugDumpDir) {}
+ virtual void CreateReport(const std::string& pDebugDumpDir, int force) {}
};
#endif
diff --git a/lib/Plugins/Python.h b/lib/Plugins/Python.h
index 57eefbf9..b54de8dc 100644
--- a/lib/Plugins/Python.h
+++ b/lib/Plugins/Python.h
@@ -10,7 +10,7 @@ class CAnalyzerPython : public CAnalyzer
public:
virtual std::string GetLocalUUID(const std::string& pDebugDumpDir);
virtual std::string GetGlobalUUID(const std::string& pDebugDumpDir);
- virtual void CreateReport(const std::string& pDebugDumpDir) {}
+ virtual void CreateReport(const std::string& pDebugDumpDir, int force) {}
virtual void Init();
virtual void DeInit();
virtual std::string CreateHash(const std::string& pInput);