Roxen.git / server / base_server / roxen.pike

version» Context lines:

Roxen.git/server/base_server/roxen.pike:1:   // This file is part of Roxen WebServer.   // Copyright © 1996 - 2009, Roxen IS.   //   // The Roxen WebServer main program.   //   // Per Hedbor, Henrik Grubbström, Pontus Hagland, David Hedbor and others.   // ABS and suicide systems contributed freely by Francesco Chemolli    - constant cvs_version="$Id: roxen.pike,v 1.1118 2012/06/21 18:15:40 mast Exp $"; + constant cvs_version="$Id$";      //! @appears roxen   //!   //! The Roxen WebServer main program.      // The argument cache. Used by the image cache.   ArgCache argcache;      // Some headerfiles   #define IN_ROXEN
Roxen.git/server/base_server/roxen.pike:3464:    id->client ), frommapp);       id->cache_status["icachedraw"] = 1;       mapping meta;    string data;    array guides;   #ifdef ARG_CACHE_DEBUG    werror("draw args: %O\n", args );   #endif -  mixed reply = draw_function( @copy_value(args), id ); +  mixed reply; +  if (mixed err = catch { +  reply = draw_function( @copy_value(args), id ); +  }) { +  master()->handle_error(err); +  return; +  }       if( !reply ) {   #ifdef ARG_CACHE_DEBUG    werror("%O(%{%O, %}%O) ==> 0\n",    draw_function, args, id);   #endif    return;    }       if( arrayp( args ) )
Roxen.git/server/base_server/roxen.pike:4266:    string errmsg = "Error in " + name + " image generation: " +    err->msg;    if (sizeof (id->referer))    errmsg += " Referrer: " + id->referer[0];    report_error (errmsg + "\n");    return 0;    }    throw (err);    }    if( !(res = restore( na,id )) ) { -  error("Draw callback %O did not generate any data.\n" +  report_error("Draw callback %O did not generate any data.\n"    "na: %O\n"    "id: %O\n",    draw_function, na, id); -  +  return 0;    }    }    res->stat = ({ 0, 0, 0, 900000000, 0, 0, 0, 0, 0 });       // Setting the cacheable flag is done in order to get headers sent which    // cause the image to be cached in the client even when using https    // sessions.    RAISE_CACHE(INITIAL_CACHEABLE);       // With the new (5.0 and newer) arg-cache enabled by default we can