in reply to Errors Using Hashes and Subroutines

ERROR_BADCONFIG is a reference. The following printError fixes your problem

sub printError { my $errortext = shift; my $errorhashref = shift; print "$errorhashref->{ 'Type' } Error Detected\n", "$errorhashref->{ 'Description' }\n", "Error Details: $errortext\n"; if ( $errorhashref->{ "Fatal" } ) { die "Fatal Error Detected" }; }
Also, when you are including errors such as "Reference found where even-sized list expected at errors.cgi line 42" it is often useful to mention what line 42 is.