From 607ff299e31f081c9690937bf0a4e88bd0214d60 Mon Sep 17 00:00:00 2001 From: "bbaetz%student.usyd.edu.au" <> Date: Sun, 22 Dec 2002 07:39:48 +0000 Subject: Bug 186337 - Param lookup should fall back to defaults r=joel, a=justdave --- Bugzilla/Config.pm | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'Bugzilla') 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 { -- cgit v1.2.3-24-g4f1b