Here is what happens when I run under the debugger. I never get
control back, and I have to kill the script via Windows' Task Manager.
When I do, I see that we are yo-yo'ing back and forth between two
parts of the code.
1220: my ($this, $hook, @arguments) = @_;
DB<1> Config::General::_hook(blib\lib/Config/General.pm:1221):
1221: if(exists $this->{Plug}->{$hook}) {
DB<1> Config::General::_hook(blib\lib/Config/General.pm:1226):
1226: return (1, @arguments);
DB<1> Config::General::_open(blib\lib/Config/General.pm:445):
445: return if(!$cont);
DB<1> Config::General::_open(blib\lib/Config/General.pm:447):
447: my($fh, $configfile);
DB<1> Config::General::_open(blib\lib/Config/General.pm:449):
449: if($basepath) {
DB<1> Config::General::_open(blib\lib/Config/General.pm:454):
454: $configfile = $basefile;
DB<1> Config::General::_open(blib\lib/Config/General.pm:457):
457: if ($this->{IncludeGlob} and $configfile =~ /[*?\[\{\\]/) {
DB<1> Config::General::_open(blib\lib/Config/General.pm:460):
460: my @include = grep { -f $_ } bsd_glob($configfile,
GLOB_BRACE | GLOB_QUOTE);
DB<1> Config::General::_open(blib\lib/Config/General.pm:460):
460: my @include = grep { -f $_ } bsd_glob($configfile,
GLOB_BRACE | GLOB_QUOTE);
DB<1> Config::General::_open(blib\lib/Config/General.pm:463):
463: if ( !@include && defined $this->{ConfigPath} ) {
DB<1> Config::General::_open(blib\lib/Config/General.pm:476):
476: for (@include) {
DB<1> Config::General::_open(blib\lib/Config/General.pm:477):
477: $this->_open($_);
DB<1> Config::General::_open(blib\lib/Config/General.pm:441):
441: my($this, $basefile, $basepath) = @_;
DB<1> Config::General::_open(blib\lib/Config/General.pm:442):
442: my $cont;
DB<1> Config::General::_open(blib\lib/Config/General.pm:444):
444: ($cont, $basefile, $basepath) = $this->_hook('pre_open',
$basefile, $basepath);
DB<1> Config::General::_hook(blib\lib/Config/General.pm:1220):
1220: my ($this, $hook, @arguments) = @_;
DB<1> Config::General::_hook(blib\lib/Config/General.pm:1221):
1221: if(exists $this->{Plug}->{$hook}) {
DB<1> Config::General::_hook(blib\lib/Config/General.pm:1226):
1226: return (1, @arguments);
DB<1> Config::General::_open(blib\lib/Config/General.pm:445):
445: return if(!$cont);
DB<1> Config::General::_open(blib\lib/Config/General.pm:447):
447: my($fh, $configfile);
DB<1> Config::General::_open(blib\lib/Config/General.pm:449):
449: if($basepath) {
DB<1> Config::General::_open(blib\lib/Config/General.pm:454):
454: $configfile = $basefile;
DB<1> Config::General::_open(blib\lib/Config/General.pm:457):
457: if ($this->{IncludeGlob} and $configfile =~ /[*?\[\{\\]/) {
DB<1> Config::General::_open(blib\lib/Config/General.pm:460):
460: my @include = grep { -f $_ } bsd_glob($configfile,
GLOB_BRACE | GLOB_QUOTE);
DB<1> Config::General::_open(blib\lib/Config/General.pm:460):
460: my @include = grep { -f $_ } bsd_glob($configfile,
GLOB_BRACE | GLOB_QUOTE);
DB<1> Config::General::_open(blib\lib/Config/General.pm:463):
463: if ( !@include && defined $this->{ConfigPath} ) {
DB<1> Config::General::_open(blib\lib/Config/General.pm:476):
476: for (@include) {
DB<1> Config::General::_open(blib\lib/Config/General.pm:477):
477: $this->_open($_);
DB<1> Config::General::_open(blib\lib/Config/General.pm:441):
441: my($this, $basefile, $basepath) = @_;
DB<1> Config::General::_open(blib\lib/Config/General.pm:442):
442: my $cont;
DB<1> Config::General::_open(blib\lib/Config/General.pm:444):
444: ($cont, $basefile, $basepath) = $this->_hook('pre_open',
$basefile, $basepath);
DB<1> Config::General::_hook(blib\lib/Config/General.pm:1220):
1220: my ($this, $hook, @arguments) = @_;
DB<1> Config::General::_hook(blib\lib/Config/General.pm:1221):
1221: if(exists $this->{Plug}->{$hook}) {
DB<1> Config::General::_hook(blib\lib/Config/General.pm:1226):
1226: return (1, @arguments);
DB<1> Config::General::_open(blib\lib/Config/General.pm:445):
445: return if(!$cont);
DB<1> Config::General::_open(blib\lib/Config/General.pm:447):
447: my($fh, $configfile);
DB<1> Config::General::_open(blib\lib/Config/General.pm:449):
449: if($basepath) {
DB<1> Config::General::_open(blib\lib/Config/General.pm:454):
454: $configfile = $basefile;
DB<1> Config::General::_open(blib\lib/Config/General.pm:457):
457: if ($this->{IncludeGlob} and $configfile =~ /[*?\[\{\\]/) {
DB<1> Config::General::_open(blib\lib/Config/General.pm:460):
460: my @include = grep { -f $_ } bsd_glob($configfile,
GLOB_BRACE | GLOB_QUOTE);
DB<1> Config::General::_open(blib\lib/Config/General.pm:460):
460: my @include = grep { -f $_ } bsd_glob($configfile,
GLOB_BRACE | GLOB_QUOTE);
DB<1> Config::General::_open(blib\lib/Config/General.pm:463):
463: if ( !@include && defined $this->{ConfigPath} ) {
DB<1> Config::General::_open(blib\lib/Config/General.pm:476):
476: for (@include) {
DB<1> Config::General::_open(blib\lib/Config/General.pm:477):
477: $this->_open($_);
DB<1> Config::General::_open(blib\lib/Config/General.pm:441):
441: my($this, $basefile, $basepath) = @_;
DB<1> Config::General::_open(blib\lib/Config/General.pm:442):
442: my $cont;
DB<1> Config::General::_open(blib\lib/Config/General.pm:444):
444: ($cont, $basefile, $basepath) = $this->_hook('pre_open',
$basefile, $basepath);
DB<1> Config::General::_hook(blib\lib/Config/General.pm:1220):
1220: my ($this, $hook, @arguments) = @_;
DB<1> Config::General::_hook(blib\lib/Config/General.pm:1221):
1221: if(exists $this->{Plug}->{$hook}) {
DB<1> Config::General::_hook(blib\lib/Config/General.pm:1226):
1226: return (1, @arguments);
DB<1> Config::General::_open(blib\lib/Config/General.pm:445):
445: return if(!$cont);
DB<1> Config::General::_open(blib\lib/Config/General.pm:447):
447: my($fh, $configfile);
DB<1> Config::General::_open(blib\lib/Config/General.pm:449):
449: if($basepath) {
DB<1> Config::General::_open(blib\lib/Config/General.pm:454):
454: $configfile = $basefile;
DB<1> Config::General::_open(blib\lib/Config/General.pm:457):
457: if ($this->{IncludeGlob} and $configfile =~ /[*?\[\{\\]/) {
DB<1> Config::General::_open(blib\lib/Config/General.pm:460):
460: my @include = grep { -f $_ } bsd_glob($configfile,
GLOB_BRACE | GLOB_QUOTE);
DB<1> Config::General::_open(blib\lib/Config/General.pm:460):
460: my @include = grep { -f $_ } bsd_glob($configfile,
GLOB_BRACE | GLOB_QUOTE);
DB<1> Config::General::_open(blib\lib/Config/General.pm:463):
463: if ( !@include && defined $this->{ConfigPath} ) {
DB<1> Config::General::_open(blib\lib/Config/General.pm:476):
476: for (@include) {
DB<1> Config::General::_open(blib\lib/Config/General.pm:477):
477: $this->_open($_);
DB<1> Config::General::_open(blib\lib/Config/General.pm:441):
441: my($this, $basefile, $basepath) = @_;
DB<1> Config::General::_open(blib\lib/Config/General.pm:442):
442: my $cont;
DB<1> Config::General::_open(blib\lib/Config/General.pm:444):
444: ($cont, $basefile, $basepath) = $this->_hook('pre_open',
$basefile, $basepath);
DB<1> Config::General::_hook(blib\lib/Config/General.pm:1220):
1220: my ($this, $hook, @arguments) = @_;
DB<1> Config::General::_hook(blib\lib/Config/General.pm:1221):
1221: if(exists $this->{Plug}->{$hook}) {
DB<1> Config::General::_hook(blib\lib/Config/General.pm:1226):
1226: return (1, @arguments);
DB<1> Config::General::_open(blib\lib/Config/General.pm:445):
445: return if(!$cont);
DB<1> Config::General::_open(blib\lib/Config/General.pm:447):
447: my($fh, $configfile);
DB<1> Config::General::_open(blib\lib/Config/General.pm:449):
449: if($basepath) {
DB<1> Config::General::_open(blib\lib/Config/General.pm:454):
454: $configfile = $basefile;
DB<1> Config::General::_open(blib\lib/Config/General.pm:457):
457: if ($this->{IncludeGlob} and $configfile =~ /[*?\[\{\\]/) {
DB<1> Config::General::_open(blib\lib/Config/General.pm:460):
460: my @include = grep { -f $_ } bsd_glob($configfile,
GLOB_BRACE | GLOB_QUOTE);
DB<1> Config::General::_open(blib\lib/Config/General.pm:460):
460: my @include = grep { -f $_ } bsd_glob($configfile,
GLOB_BRACE | GLOB_QUOTE);
DB<1> Config::General::_open(blib\lib/Config/General.pm:463):
463: if ( !@include && defined $this->{ConfigPath} ) {
DB<1> Config::General::_open(blib\lib/Config/General.pm:476):
476: for (@include) {
DB<1> Config::General::_open(blib\lib/Config/General.pm:477):
477: $this->_open($_);
DB<1> Config::General::_open(blib\lib/Config/General.pm:441):
441: my($this, $basefile, $basepath) = @_;
DB<1> Config::General::_open(blib\lib/Config/General.pm:442):
442: my $cont;
DB<1> Config::General::_open(blib\lib/Config/General.pm:444):
444: ($cont, $basefile, $basepath) = $this->_hook('pre_open',
$basefile, $basepath);
DB<1> Config::General::_hook(blib\lib/Config/General.pm:1220):
1220: my ($this, $hook, @arguments) = @_;
DB<1> Config::General::_hook(blib\lib/Config/General.pm:1221):
1221: if(exists $this->{Plug}->{$hook}) {
DB<1> Config::General::_hook(blib\lib/Config/General.pm:1226):
1226: return (1, @arguments);
DB<1> Config::General::_open(blib\lib/Config/General.pm:445):
445: return if(!$cont);
DB<1> Config::General::_open(blib\lib/Config/General.pm:447):
447: my($fh, $configfile);
DB<1> Config::General::_open(blib\lib/Config/General.pm:449):
449: if($basepath) {
DB<1> Config::General::_open(blib\lib/Config/General.pm:454):
454: $configfile = $basefile;
DB<1> Config::General::_open(blib\lib/Config/General.pm:457):
457: if ($this->{IncludeGlob} and $configfile =~ /[*?\[\{\\]/) {
DB<1> Config::General::_open(blib\lib/Config/General.pm:460):
460: my @include = grep { -f $_ } bsd_glob($configfile,
GLOB_BRACE | GLOB_QUOTE);
DB<1> Config::General::_open(blib\lib/Config/General.pm:460):
460: my @include = grep { -f $_ } bsd_glob($configfile,
GLOB_BRACE | GLOB_QUOTE);
DB<1> Config::General::_open(blib\lib/Config/General.pm:463):
463: if ( !@include && defined $this->{ConfigPath} ) {
DB<1> Config::General::_open(blib\lib/Config/General.pm:476):
476: for (@include) {
DB<1> Config::General::_open(blib\lib/Config/General.pm:477):
477: $this->_open($_);
DB<1> Config::General::_open(blib\lib/Config/General.pm:441):
441: my($this, $basefile, $basepath) = @_;
DB<1> Config::General::_open(blib\lib/Config/General.pm:442):
442: my $cont;
DB<1> Config::General::_open(blib\lib/Config/General.pm:444):
444: ($cont, $basefile, $basepath) = $this->_hook('pre_open',
$basefile, $basepath);
DB<1> Config::General::_hook(blib\lib/Config/General.pm:1220):
1220: my ($this, $hook, @arguments) = @_;
DB<1> Config::General::_hook(blib\lib/Config/General.pm:1221):
1221: if(exists $this->{Plug}->{$hook}) {
DB<1>