use strict;
BEGIN {
- unshift @INC, "modules/override"; # Use our own versions of various modules (e.g. YAML).
- push @INC, "modules/fallback"; # Only use our own versions of modules if there's no system version.
- push @INC, "SL"; # FCGI won't find modules that are not properly named. Help it by inclduging SL
+ use FindBin;
+
+ unshift(@INC, $FindBin::Bin . '/modules/override'); # Use our own versions of various modules (e.g. YAML).
+ push (@INC, $FindBin::Bin); # '.' will be removed from @INC soon.
+ push (@INC, $FindBin::Bin . '/modules/fallback'); # Only use our own versions of modules if there's no system version.
}
-use FCGI;
use SL::Dispatcher;
+use SL::FCGIFixes;
+use SL::LXDebug;
-SL::Dispatcher::pre_startup();
-my $request = FCGI::Request();
-SL::Dispatcher::handle_request('FastCGI') while $request->Accept() >= 0;
+our $dispatcher = SL::Dispatcher->new('FastCGI');
+$dispatcher->pre_startup_setup;
+SL::FCGIFixes::apply_fixes();
+$dispatcher->pre_startup_checks;
+$dispatcher->handle_all_requests;
1;