From de6ef7e442ff9459ac9e0bb914e18da1f493022b Mon Sep 17 00:00:00 2001 From: Mark Wooding Date: Fri, 24 Jul 2015 18:54:01 +0100 Subject: [PATCH] lib/Odin.pm: Leave reading user configuration to the very end. The configuration file might want to call into the library for things. --- lib/Odin.pm | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/lib/Odin.pm b/lib/Odin.pm index 27b2e8b..a704165 100644 --- a/lib/Odin.pm +++ b/lib/Odin.pm @@ -41,14 +41,10 @@ our %COOKIE_DEFAULTS = ( -max_age => 3600 ); -require "config.pl"; -our ($SCHEME, $DOMAIN, $BASEPATH) = $BASEURL =~ m!^([^:]+)://([^/]+)(/.*)$!; -merge_hash %COOKIE_DEFAULTS, -domain => $DOMAIN, -path => $BASEPATH; -merge_hash %COOKIE_DEFAULTS, -secure => undef if $SCHEME eq "https"; -our $SHORTURL = "$BASEURL$SHORTURL_PATH"; -our $PASTEBIN = "$BASEURL$PASTEBIN_PATH"; +our ($SCHEME, $DOMAIN, $BASEPATH); +our ($SHORTURL, $PASTEBIN); ###-------------------------------------------------------------------------- ### Miscellaneous utilities. @@ -509,6 +505,20 @@ sub bad { $_[0]->{ok} = 0; } sub err { $_[0]->bad; print STDERR "$PROG: $_[1]\n"; } sub unk { $_[0]->err("unknown option `-$_[0]->{opt}'"); } +###-------------------------------------------------------------------------- +### Final configuration. + +package Odin; + +require "config.pl"; + +($SCHEME, $DOMAIN, $BASEPATH) = $BASEURL =~ m!^([^:]+)://([^/]+)(/.*)$!; +merge_hash %COOKIE_DEFAULTS, -domain => $DOMAIN, -path => $BASEPATH; +merge_hash %COOKIE_DEFAULTS, -secure => undef if $SCHEME eq "https"; + +$SHORTURL = "$BASEURL$SHORTURL_PATH"; +$PASTEBIN = "$BASEURL$PASTEBIN_PATH"; + ###----- That's all, folks -------------------------------------------------- 1; -- 2.11.0