From 922c09396817fece1275365a474e5cbde6e1f99e Mon Sep 17 00:00:00 2001 From: Vladimir Panteleev Date: Sun, 8 Apr 2018 19:07:15 +0300 Subject: enter_bug: Fix hard BMO dependency (#29) The default_platform and default_op_sys Bugzilla::Product methods are installed by the BMO extension, so don't attempt to invoke them when it isn't present. --- enter_bug.cgi | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/enter_bug.cgi b/enter_bug.cgi index 33cdf8535..5b8a97dba 100755 --- a/enter_bug.cgi +++ b/enter_bug.cgi @@ -37,6 +37,8 @@ use Bugzilla::Field; use Bugzilla::Status; use Bugzilla::UserAgent; +use List::Util qw(any); + my $user = Bugzilla->login(LOGIN_REQUIRED); my $cloned_bug; @@ -299,8 +301,13 @@ else { $default{'bug_severity'} = formvalue('bug_severity', Bugzilla->params->{'defaultseverity'}); # BMO - use per-product default hw/os - $default{'rep_platform'} = formvalue('rep_platform', $product->default_platform // detect_platform()); - $default{'op_sys'} = formvalue('op_sys', $product->default_op_sys // detect_op_sys()); + if (any { $_->NAME eq 'BMO' } @{ Bugzilla->extensions }) { + $default{'rep_platform'} = formvalue('rep_platform', $product->default_platform // detect_platform()); + $default{'op_sys'} = formvalue('op_sys', $product->default_op_sys // detect_op_sys()); + } else { + $default{'rep_platform'} = formvalue('rep_platform', detect_platform()); + $default{'op_sys'} = formvalue('op_sys', detect_op_sys()); + } $vars->{'rep_platform'} = detect_platform(); $vars->{'rep_op_sys'} = detect_op_sys(); -- cgit v1.2.3-24-g4f1b