summaryrefslogtreecommitdiffabout
path: root/src/sitecing-fastcgi.cc
authorMichael Krelin <hacker@klever.net>2007-01-03 00:57:27 (UTC)
committer Michael Krelin <hacker@klever.net>2007-01-03 00:57:27 (UTC)
commitf114b9ea0a5cb03d0e9d411090026774d6df44bf (patch) (side-by-side diff)
tree71bc93466d7789b34c14f3639a515fdcf40c2f2d /src/sitecing-fastcgi.cc
parent555ef5892cba60983f45fea6e6bbb3c3ce2f8532 (diff)
downloadsitecing-f114b9ea0a5cb03d0e9d411090026774d6df44bf.zip
sitecing-f114b9ea0a5cb03d0e9d411090026774d6df44bf.tar.gz
sitecing-f114b9ea0a5cb03d0e9d411090026774d6df44bf.tar.bz2
added request serial tracking to sitecing_interface
Diffstat (limited to 'src/sitecing-fastcgi.cc') (more/less context) (ignore whitespace changes)
-rw-r--r--src/sitecing-fastcgi.cc1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/sitecing-fastcgi.cc b/src/sitecing-fastcgi.cc
index 57aba60..4768e8f 100644
--- a/src/sitecing-fastcgi.cc
+++ b/src/sitecing-fastcgi.cc
@@ -154,24 +154,25 @@ void sitecing_fastcgi_pm::process(int slot) {
semaphore_lock sl;
if(multi) {
sslot->state = scoreboard_slot::state_idle;
sl.sem = &sem;
sl.lock();
}
sslot->state = scoreboard_slot::state_accept;
fcgi_interface fi(fs);
sslot->state = scoreboard_slot::state_processing;
if(multi)
sl.unlock();
cgi_gateway gw(fi);
+ ++scif.serial;
scif.prepare(&gw);
try {
component_path = konforka::normalize_path(gw.path_info(),konforka::strip_leading_slash|konforka::strip_trailing_slash);
string full_component_path;
string sitecing_path_info;
while(true) {
full_component_path = config.root_source+'/'+component_path;
if(!access(full_component_path.c_str(),F_OK))
break;
string::size_type sl = component_path.rfind('/');
if(sl==string::npos)
throw konforka::exception(CODEPOINT,"can't find the target component");