On 08/09/2012 06:44 PM, Jakub Filak wrote: > New kernel bug reports is to be created according the following > template: > > ---- > <if comment exists:> > Description of problem: > <$user's comment> > <fi> > > Additional info: > libreport version: <$libreport version> > abrt_version: <$abrt version> > cmdline: <$cmdline> > kernel: <$kernel version> > tainted_long: <$tainted long if present> > > backtrace: > <$stack trace> > ---- > > No files attacheced. > > Signed-off-by: Jakub Filak <[email protected]> > --- > src/include/internal_libreport.h | 2 -- > src/lib/make_descr.c | 19 ------------ > src/plugins/rhbz.c | 66 > ++++++++++++++++++---------------------- > 3 files changed, 29 insertions(+), 58 deletions(-) > > diff --git a/src/include/internal_libreport.h > b/src/include/internal_libreport.h > index e0cd7e6..db22ae1 100644 > --- a/src/include/internal_libreport.h > +++ b/src/include/internal_libreport.h > @@ -587,8 +587,6 @@ char *make_description_item_multiline(const char *name, > const char* content); > char* make_description_bz(problem_data_t *problem_data, unsigned > max_text_size); > #define make_description_logger libreport_make_description_logger > char* make_description_logger(problem_data_t *problem_data, unsigned > max_text_size); > -#define make_description_koops libreport_make_description_koops > -char* make_description_koops(problem_data_t *problem_data, unsigned > max_text_size); > //UNUSED > //#define make_description_mailx libreport_make_description_mailx > //char* make_description_mailx(problem_data_t *problem_data); > diff --git a/src/lib/make_descr.c b/src/lib/make_descr.c > index c8c0f71..0b4cdb5 100644 > --- a/src/lib/make_descr.c > +++ b/src/lib/make_descr.c > @@ -298,22 +298,3 @@ char* make_description_logger(problem_data_t > *problem_data, unsigned max_text_si > MAKEDESC_SHOW_FILES | MAKEDESC_SHOW_MULTILINE > ); > } > - > -/* Items we want to include to bz */ > -static const char *const whitelisted_items[] = { > - FILENAME_CMDLINE, > - FILENAME_BACKTRACE, > - NULL > -}; > - > -char* make_description_koops(problem_data_t *problem_data, unsigned > max_text_size) > -{ > - return make_description( > - problem_data, > - (char**)whitelisted_items, > - max_text_size, > - MAKEDESC_SHOW_FILES > - | MAKEDESC_SHOW_MULTILINE > - | MAKEDESC_WHITELIST > - ); > -} > diff --git a/src/plugins/rhbz.c b/src/plugins/rhbz.c > index 3bdf139..9c9ea34 100644 > --- a/src/plugins/rhbz.c > +++ b/src/plugins/rhbz.c > @@ -624,15 +624,20 @@ int rhbz_new_bug(struct abrt_xmlrpc *ax, problem_data_t > *problem_data, > > FILENAME_ANALYZER); > const char *tainted_short = > problem_data_get_content_or_NULL(problem_data, > > FILENAME_TAINTED_SHORT); > + const char *comment = problem_data_get_content_or_NULL(problem_data, > + > FILENAME_COMMENT); > > struct strbuf *buf_summary = strbuf_new(); > + > + const bool kerneloops = analyzer && strcmp(analyzer, "Kerneloops") == 0; > + > if (analyzer && strcmp(analyzer, "libreport") == 0) > { > strbuf_append_str(buf_summary, reason); > } > else > { > - if (analyzer && strcmp(analyzer, "Kerneloops") == 0) > + if (kerneloops) > strbuf_append_str(buf_summary, "[abrt]"); > else > strbuf_append_strf(buf_summary, "[abrt] %s", package); > @@ -644,48 +649,34 @@ int rhbz_new_bug(struct abrt_xmlrpc *ax, problem_data_t > *problem_data, > strbuf_append_strf(buf_summary, ": %s", reason); > > if (tainted_short) > - { > strbuf_append_strf(buf_summary, ": TAINTED %s", tainted_short); > - } > } > - char *status_whiteboard = xasprintf("abrt_hash:%s", duphash); > > - char *full_dsc = NULL; > - if (analyzer && strcmp(analyzer, "Kerneloops") == 0) > + /* Generating of a description according to the RH bugzilla default > format: > + * https://bugzilla.redhat.com/enter_bug.cgi?product=Fedora > + */ > + struct strbuf *tmp_full_dsc = strbuf_new(); > + if (comment) > + strbuf_append_strf(tmp_full_dsc, "Description of problem:\n%s\n\n", > comment); > + > + /* the package file always contains 'kernel' string in case of > kerneloops */ > + /* it doesn't make sense to mess up a description with this useless > information */ > + if (package && !kerneloops) > + strbuf_append_strf(tmp_full_dsc, "Version-Release number of selected > component:\n%s\n\n", package); > + > + char *bz_dsc = make_description(problem_data, > (char**)g_additional_info_files, > + CD_TEXT_ATT_SIZE_BZ, > MAKEDESC_SHOW_MULTILINE | MAKEDESC_WHITELIST); > + strbuf_append_strf(tmp_full_dsc, "Additional info:\nlibreport version: > "VERSION"\n%s\n", bz_dsc); > + free(bz_dsc); > + > + char *backtrace = rhbz_get_backtrace_info(problem_data, > CD_TEXT_ATT_SIZE_BZ); > + if (backtrace) > { > - char *bz_dsc = make_description_koops(problem_data, > CD_TEXT_ATT_SIZE_BZ); > - full_dsc = xasprintf("libreport version: "VERSION"\n%s", bz_dsc); > - free(bz_dsc); > + strbuf_append_str(tmp_full_dsc, backtrace); > + free(backtrace); > } > - else > - { > - /* Generating of a description according to the RH bugzilla default > format: > - * https://bugzilla.redhat.com/enter_bug.cgi?product=Fedora > - */ > - struct strbuf *tmp_full_dsc = strbuf_new(); > > - const char *comment = > problem_data_get_content_or_NULL(problem_data, > - > FILENAME_COMMENT); > - if (comment) > - strbuf_append_strf(tmp_full_dsc, "Description of > problem:\n%s\n\n", comment); > - > - if (package) > - strbuf_append_strf(tmp_full_dsc, "Version-Release number of > selected component:\n%s\n\n", package); > - > - char *bz_dsc = make_description(problem_data, > (char**)g_additional_info_files, > - CD_TEXT_ATT_SIZE_BZ, MAKEDESC_SHOW_MULTILINE | > MAKEDESC_WHITELIST); > - strbuf_append_strf(tmp_full_dsc, "Additional info:\nlibreport > version: "VERSION"\n%s\n", bz_dsc); > - free(bz_dsc); > - > - char *backtrace = rhbz_get_backtrace_info(problem_data, > CD_TEXT_ATT_SIZE_BZ); > - if (backtrace) > - { > - strbuf_append_str(tmp_full_dsc, backtrace); > - free(backtrace); > - } > - > - full_dsc = strbuf_free_nobuf(tmp_full_dsc); > - } > + char *full_dsc = strbuf_free_nobuf(tmp_full_dsc); > > char *product = NULL; > char *version = NULL; > @@ -693,6 +684,7 @@ int rhbz_new_bug(struct abrt_xmlrpc *ax, problem_data_t > *problem_data, > > xmlrpc_value* result = NULL; > char *summary = strbuf_free_nobuf(buf_summary); > + char *status_whiteboard = xasprintf("abrt_hash:%s", duphash); > > if (!group) > {
Looks ok to me.
