use URI::QueryParam;
use Moose::Util::TypeConstraints;
use Plack::Loader;
-use Plack::Middleware::Conditional;
-use Plack::Middleware::ReverseProxy;
-use Catalyst::Engine::Loader;
+use Catalyst::EngineLoader;
use Encode ();
use utf8;
# FIXME - we should stash the options in an attribute so that custom args
# like Gitalist's --git_dir are possible to get from the app without stupid tricks.
- my $server = pop @args if blessed $args[-1];
- my $options = pop @args if ref($args[-1]) eq 'HASH';
+ my $server = pop @args if (scalar @args && blessed $args[-1]);
+ my $options = pop @args if (scalar @args && ref($args[-1]) eq 'HASH');
if (! $server ) {
- $server = Catalyst::Engine::Loader->auto(); # We're not being called from a script,
+ $server = Catalyst::EngineLoader->new(application_name => ref($self))->auto();
+ # We're not being called from a script,
# so auto detect what backend to run on.
# This should never happen, as mod_perl
# never calls ->run, instead the $app->handle
$self->_prepared_write(1);
}
- return 0 if !defined $buffer;
+ $buffer = q[] unless defined $buffer;
my $len = length($buffer);
$self->_writer->write($buffer);