Signed-off-by: Nikola Pajkovsky npajkovs@redhat.com --- src/plugins/abrt-action-bugzilla.cpp | 30 ++++++------------------------ 1 files changed, 6 insertions(+), 24 deletions(-)
diff --git a/src/plugins/abrt-action-bugzilla.cpp b/src/plugins/abrt-action-bugzilla.cpp index c77a2ba..5b4eacc 100644 --- a/src/plugins/abrt-action-bugzilla.cpp +++ b/src/plugins/abrt-action-bugzilla.cpp @@ -41,9 +41,10 @@ struct bug_info { const char* bug_reporter; const char* bug_product; xmlrpc_int32 bug_dup_id; - std::vector<char*> bug_cc; + GList* bug_cc; };
+/* xzalloc */ static void bug_info_init(struct bug_info* bz) { bz->bug_status = NULL; @@ -60,27 +61,7 @@ static void bug_info_destroy(struct bug_info* bz) free((void*)bz->bug_reporter); free((void*)bz->bug_product);
- if (!bz->bug_cc.empty()) - { - for (unsigned ii = 0; ii < bz->bug_cc.size(); ii++) - free(bz->bug_cc[ii]); - - bz->bug_cc.clear(); - } -} - -static int am_i_in_cc(const struct bug_info* bz, const char* login) -{ - if (bz->bug_cc.empty()) - return -1; - - int size = bz->bug_cc.size(); - for (int ii = 0; ii < size; ii++) - { - if (strcmp(login, bz->bug_cc[ii]) == 0) - return 0; - } - return -1; + list_free_with_free(bz->bug_cc); }
/* @@ -308,7 +289,7 @@ void ctx::get_bug_cc(xmlrpc_value* result_xml, struct bug_info* bz)
if (*cc != '\0') { - bz->bug_cc.push_back((char*)cc); + bz->bug_cc = g_list_append(bz->bug_cc, (char*)cc); VERB3 log("member on cc is %s", cc); continue; } @@ -846,7 +827,8 @@ static void report_to_bugzilla( if (strcmp(bz.bug_status, "CLOSED") != 0) { int status = 0; - if ((strcmp(bz.bug_reporter, login) != 0) && (am_i_in_cc(&bz, login))) + if ((strcmp(bz.bug_reporter, login) != 0) + && (g_list_find(bz.bug_cc, login))) { log(_("Add %s to CC list"), login); status = bz_server.add_plus_one_cc(bug_id, login);
On Tue, 2011-03-15 at 13:02 +0100, Nikola Pajkovsky wrote:
Signed-off-by: Nikola Pajkovsky npajkovs@redhat.com
src/plugins/abrt-action-bugzilla.cpp | 30 ++++++------------------------ 1 files changed, 6 insertions(+), 24 deletions(-)
diff --git a/src/plugins/abrt-action-bugzilla.cpp b/src/plugins/abrt-action-bugzilla.cpp index c77a2ba..5b4eacc 100644 --- a/src/plugins/abrt-action-bugzilla.cpp +++ b/src/plugins/abrt-action-bugzilla.cpp @@ -41,9 +41,10 @@ struct bug_info { const char* bug_reporter; const char* bug_product; xmlrpc_int32 bug_dup_id;
- std::vector<char*> bug_cc;
- GList* bug_cc;
};
+/* xzalloc */ static void bug_info_init(struct bug_info* bz) { bz->bug_status = NULL; @@ -60,27 +61,7 @@ static void bug_info_destroy(struct bug_info* bz) free((void*)bz->bug_reporter); free((void*)bz->bug_product);
- if (!bz->bug_cc.empty())
- {
for (unsigned ii = 0; ii < bz->bug_cc.size(); ii++)
free(bz->bug_cc[ii]);
bz->bug_cc.clear();
- }
-}
-static int am_i_in_cc(const struct bug_info* bz, const char* login) -{
- if (bz->bug_cc.empty())
return -1;
- int size = bz->bug_cc.size();
- for (int ii = 0; ii < size; ii++)
- {
if (strcmp(login, bz->bug_cc[ii]) == 0)
return 0;
- }
- return -1;
- list_free_with_free(bz->bug_cc);
}
/* @@ -308,7 +289,7 @@ void ctx::get_bug_cc(xmlrpc_value* result_xml, struct bug_info* bz)
if (*cc != '\0') {
bz->bug_cc.push_back((char*)cc);
bz->bug_cc = g_list_append(bz->bug_cc, (char*)cc); VERB3 log("member on cc is %s", cc); continue; }
@@ -846,7 +827,8 @@ static void report_to_bugzilla( if (strcmp(bz.bug_status, "CLOSED") != 0) { int status = 0;
if ((strcmp(bz.bug_reporter, login) != 0) && (am_i_in_cc(&bz, login)))
if ((strcmp(bz.bug_reporter, login) != 0)
&& (g_list_find(bz.bug_cc, login))) { log(_("Add %s to CC list"), login); status = bz_server.add_plus_one_cc(bug_id, login);
Looks good to me, please apply.
"DV" == Denys Vlasenko dvlasenk@redhat.com wrote:
Denys> On Tue, 2011-03-15 at 13:02 +0100, Nikola Pajkovsky wrote: Denys> > Signed-off-by: Nikola Pajkovsky npajkovs@redhat.com Denys> > --- Denys> > src/plugins/abrt-action-bugzilla.cpp | 30 Denys> > ++++++------------------------ 1 files changed, 6 insertions(+), 24 Denys> > deletions(-) Denys> > Denys> > diff --git a/src/plugins/abrt-action-bugzilla.cpp Denys> > b/src/plugins/abrt-action-bugzilla.cpp index c77a2ba..5b4eacc 100644 Denys> > --- a/src/plugins/abrt-action-bugzilla.cpp Denys> > +++ b/src/plugins/abrt-action-bugzilla.cpp Denys> > @@ -41,9 +41,10 @@ struct bug_info { Denys> > const char* bug_reporter; Denys> > const char* bug_product; Denys> > xmlrpc_int32 bug_dup_id; Denys> > - std::vector<char*> bug_cc; Denys> > + GList* bug_cc; Denys> > }; Denys> > Denys> > +/* xzalloc */ Denys> > static void bug_info_init(struct bug_info* bz) Denys> > { Denys> > bz->bug_status = NULL; Denys> > @@ -60,27 +61,7 @@ static void bug_info_destroy(struct bug_info* bz) Denys> > free((void*)bz->bug_reporter); Denys> > free((void*)bz->bug_product); Denys> > Denys> > - if (!bz->bug_cc.empty()) Denys> > - { Denys> > - for (unsigned ii = 0; ii < bz->bug_cc.size(); ii++) Denys> > - free(bz->bug_cc[ii]); Denys> > - Denys> > - bz->bug_cc.clear(); Denys> > - } Denys> > -} Denys> > - Denys> > -static int am_i_in_cc(const struct bug_info* bz, const char* login) Denys> > -{ Denys> > - if (bz->bug_cc.empty()) Denys> > - return -1; Denys> > - Denys> > - int size = bz->bug_cc.size(); Denys> > - for (int ii = 0; ii < size; ii++) Denys> > - { Denys> > - if (strcmp(login, bz->bug_cc[ii]) == 0) Denys> > - return 0; Denys> > - } Denys> > - return -1; Denys> > + list_free_with_free(bz->bug_cc); Denys> > } Denys> > Denys> > /* Denys> > @@ -308,7 +289,7 @@ void ctx::get_bug_cc(xmlrpc_value* result_xml, Denys> > struct bug_info* bz) Denys> > if (*cc != '\0') Denys> > { Denys> > - bz->bug_cc.push_back((char*)cc); Denys> > + bz->bug_cc = g_list_append(bz->bug_cc, (char*)cc); Denys> > VERB3 log("member on cc is %s", cc); Denys> > continue; Denys> > } Denys> > @@ -846,7 +827,8 @@ static void report_to_bugzilla( Denys> > if (strcmp(bz.bug_status, "CLOSED") != 0) Denys> > { Denys> > int status = 0; Denys> > - if ((strcmp(bz.bug_reporter, login) != 0) && (am_i_in_cc(&bz, Denys> > login))) Denys> > + if ((strcmp(bz.bug_reporter, login) != 0) Denys> > + && (g_list_find(bz.bug_cc, login))) Denys> > { Denys> > log(_("Add %s to CC list"), login); Denys> > status = bz_server.add_plus_one_cc(bug_id, login); Denys> Denys> Denys> Denys> Looks good to me, please apply.
Thanks, will merge it into master in a minute
crash-catcher@lists.fedorahosted.org