diff options
author | Nikola Pajkovsky <npajkovs@redhat.com> | 2010-04-14 14:34:27 +0200 |
---|---|---|
committer | Nikola Pajkovsky <npajkovs@redhat.com> | 2010-04-14 22:28:45 +0200 |
commit | d6a30e2671eb3b2c93a58846a535e2d1c2533e88 (patch) | |
tree | e4563b07dcf2c4c61519e61406630f0347d67287 | |
parent | 2cec2a2a674c8901f7b4933075d5b86436ded642 (diff) | |
download | abrt-d6a30e2671eb3b2c93a58846a535e2d1c2533e88.tar.gz abrt-d6a30e2671eb3b2c93a58846a535e2d1c2533e88.tar.xz abrt-d6a30e2671eb3b2c93a58846a535e2d1c2533e88.zip |
comment can be private
Signed-off-by: Nikola Pajkovsky <npajkovs@redhat.com>
-rw-r--r-- | lib/Plugins/Bugzilla.cpp | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/lib/Plugins/Bugzilla.cpp b/lib/Plugins/Bugzilla.cpp index bffccc12..0f8a1c22 100644 --- a/lib/Plugins/Bugzilla.cpp +++ b/lib/Plugins/Bugzilla.cpp @@ -118,7 +118,7 @@ struct ctx: public abrt_xmlrpc_conn { xmlrpc_int32 new_bug(const map_crash_data_t& pCrashData); int add_attachments(const char* bug_id_str, const map_crash_data_t& pCrashData); int get_bug_info(struct bug_info* bz, xmlrpc_int32 bug_id); - int add_comment(xmlrpc_int32 bug_id, const char* comment); + int add_comment(xmlrpc_int32 bug_id, const char* comment, bool is_private); xmlrpc_value* call(const char* method, const char* format, ...); }; @@ -336,9 +336,11 @@ int ctx::add_plus_one_cc(xmlrpc_int32 bug_id, const char* login) return result ? 0 : -1; } -int ctx::add_comment(xmlrpc_int32 bug_id, const char* comment) +int ctx::add_comment(xmlrpc_int32 bug_id, const char* comment, bool is_private) { - xmlrpc_value* result = call("Bug.update", "({s:i,s:{s:s}})", "ids", (int)bug_id, "updates", "comment", comment); + xmlrpc_value* result = call("Bug.add_comment", "({s:i,s:s,s:b})", "id", (int)bug_id, + "comment", comment, + "private", is_private); if (result) xmlrpc_DECREF(result); return result ? 0 : -1; @@ -746,9 +748,10 @@ std::string CReporterBugzilla::Report(const map_crash_data_t& pCrashData, std::string description = make_description_reproduce_comment(pCrashData); if (!description.empty()) { - const char* package = get_crash_data_item_content_or_NULL(pCrashData, FILENAME_PACKAGE); - const char* release = get_crash_data_item_content_or_NULL(pCrashData, FILENAME_RELEASE); - const char* arch = get_crash_data_item_content_or_NULL(pCrashData, FILENAME_ARCHITECTURE); + const char* package = get_crash_data_item_content_or_NULL(pCrashData, FILENAME_PACKAGE); + const char* release = get_crash_data_item_content_or_NULL(pCrashData, FILENAME_RELEASE); + const char* arch = get_crash_data_item_content_or_NULL(pCrashData, FILENAME_ARCHITECTURE); + const char* is_private = get_crash_data_item_content_or_NULL(pCrashData, "is_private"); description = ssprintf("Package: %s\n" "Architecture: %s\n" @@ -757,7 +760,9 @@ std::string CReporterBugzilla::Report(const map_crash_data_t& pCrashData, ); update_client(_("Add new comment into bug(%d)"), (int)bug_id); - if (bz_server.add_comment(bug_id, description.c_str()) == -1) + + bool is_priv = is_private && (is_private[0] == '1'); + if (bz_server.add_comment(bug_id, description.c_str(), is_priv) == -1) { bug_info_destroy(&bz); throw_if_xml_fault_occurred(&bz_server.env); |