summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Bugzilla/Config.pm13
1 files changed, 11 insertions, 2 deletions
diff --git a/Bugzilla/Config.pm b/Bugzilla/Config.pm
index 87d8c2dc1..190b11646 100644
--- a/Bugzilla/Config.pm
+++ b/Bugzilla/Config.pm
@@ -121,9 +121,18 @@ sub Param {
my ($param) = @_;
# By this stage, the param must be in the hash
- die "Can't find param named $param" unless (exists $param{$param});
+ die "Can't find param named $param" unless (exists $params{$param});
- return $param{$param};
+ # When module startup code runs (which is does even via -c, when using
+ # |use|), we may try to grab params which don't exist yet. This affects
+ # tests, so have this as a fallback for the -c case
+ return $params{$param}->{default} if ($^C && not exists $param{$param});
+
+ # If we have a value for the param, return it
+ return $param{$param} if exists $param{$param};
+
+ # Else error out
+ die "No value for param $param";
}
sub GetParamList {