Roxen.git / server / base_server / configuration.pike

version» Context lines:

Roxen.git/server/base_server/configuration.pike:1:   // This file is part of Roxen WebServer.   // Copyright © 1996 - 2004, Roxen IS.   //      // @appears Configuration   //! A site's main configuration    - constant cvs_version = "$Id: configuration.pike,v 1.608 2006/05/23 14:49:45 anders Exp $"; + constant cvs_version = "$Id: configuration.pike,v 1.609 2006/05/31 15:32:55 mast Exp $";   #include <module.h>   #include <module_constants.h>   #include <roxen.h>   #include <request_trace.h>   #include <timers.h>      #define CATCH(P,X) do{mixed e;if(e=catch{X;})report_error("While "+P+"\n"+describe_backtrace(e));}while(0)      // --- Locale defines ---   //<locale-token project="roxen_start"> LOC_S </locale-token>
Roxen.git/server/base_server/configuration.pike:3094:    start(2);    }       store( "EnabledModules", enabled_modules, 1, this_object());    foreach(indices(modules), string modname)    {    foreach(indices(modules[modname]->copies), int i)    {    store(modname+"#"+i, modules[modname]->copies[i]->query(), 0, this_object());    if (mixed err = catch(modules[modname]->copies[i]-> -  start(2, this_object()))) +  start(2, this_object(), 0)))    report_error("Error calling start in module.\n%s",    describe_backtrace (err));    }    }    invalidate_cache();   }      int save_one( RoxenModule o )   //! Save all variables in a given module.   {
Roxen.git/server/base_server/configuration.pike:3119:    start(2);    return 1;    }    string q = otomod[ o ];    if( !q )    error("Invalid module");       store(q, o->query(), 0, this_object());    invalidate_cache();    mixed error; -  if( error = catch( o->start(2, this_object()) ) ) +  if( error = catch( o->start(2, this_object(), 0) ) )    {    if( objectp(error ) )    error = (array)error;    if( sizeof(error)>1 && arrayp( error[1] ) )    {    int i;    for( i = 0; i<sizeof( error[1] ); i++ )    if( error[1][i][2] == save_one )    break;    error[1] = error[1][i+1..];
Roxen.git/server/base_server/configuration.pike:3464:       if( me->no_delayed_load && got_no_delayed_load >= 0 )    got_no_delayed_load = 1;       roxen->bootstrap_info->set (0);    return me;   }      void call_start_callbacks( RoxenModule me,    ModuleInfo moduleinfo, -  ModuleCopies module ) +  ModuleCopies module, +  void|int newly_added)   {    call_low_start_callbacks( me, moduleinfo, module ); -  call_high_start_callbacks (me, moduleinfo); +  call_high_start_callbacks (me, moduleinfo, newly_added);   }      void call_low_start_callbacks( RoxenModule me,    ModuleInfo moduleinfo,    ModuleCopies module )   {    if(!me) return;    if(!moduleinfo) return;    if(!module) return;   
Roxen.git/server/base_server/configuration.pike:3578:       if(module_type & MODULE_FILTER)    pri[pr]->filter_modules += ({ me });       if(module_type & MODULE_FIRST)    pri[pr]->first_modules += ({ me });       invalidate_cache();   }    - void call_high_start_callbacks (RoxenModule me, ModuleInfo moduleinfo) + void call_high_start_callbacks (RoxenModule me, ModuleInfo moduleinfo, +  void|int newly_added)   {    // This is icky, but I don't know if it's safe to remove. /mast    if(!me) return;    if(!moduleinfo) return;       mixed err; -  if((me->start) && (err = catch( me->start(0, this_object()) ) ) ) +  if((me->start) && +  (err = catch( me->start(0, this_object(), newly_added) ) ) )    {   #ifdef MODULE_DEBUG    if (enable_module_batch_msgs)    report_debug("\bERROR\n");   #endif    string bt=describe_backtrace(err);    report_error(LOC_M(41, "Error while initiating module copy of %s%s"),    moduleinfo->get_name(), (bt ? ":\n"+bt : "\n"));    got_no_delayed_load = -1;    }