pike.git / lib / master.pike.in

version» Context lines:

pike.git/lib/master.pike.in:1:   // -*- Pike -*-   //   // Master Control Program for Pike.   //   // This file is part of Pike. For copyright information see COPYRIGHT.   // Pike is distributed under GPL, LGPL and MPL. See the file COPYING   // for more information.   // - // $Id: master.pike.in,v 1.322 2004/01/10 23:18:35 nilsson Exp $ + // $Id: master.pike.in,v 1.323 2004/01/12 03:25:10 nilsson Exp $      #pike __REAL_VERSION__      // Some programs destroys character pairs beginning with the currency   // symbol when running in chinese locale.   #if "ยค/" != "\244/"   #error "master.pike.in is corrupted."   #endif      // --- Some configurable parameters
pike.git/lib/master.pike.in:715:    if(!autoreload_on || load_time[fname]>=time())   #endif    {    if(!zero_type (ret=programs[fname]) && ret != no_value) {    resolv_debug ("low_findprog %s: returning cached (no autoreload)\n", fname);    return ret;    }    }      #ifdef __NT__ -  // Ugly kluge to work better with cygwin32 +  // Ugly kluge to work better with cygwin32 "/X:/" paths.    if(getenv("OSTYPE")=="cygwin32")    {    string tmp=fname[..1];    if((tmp=="//" || tmp=="\\\\") && (fname[3]=='/' || fname[3]=='\\'))    {    if(!master_file_stat(fname))    {    fname=fname[2..2]+":"+fname[3..];    }    }
pike.git/lib/master.pike.in:3061:   string describe_module(object|program mod, array(object)|void ret_obj)   {    // Note: mod might be a bignum object; objectp won't work right for    // our purposes. object_program returns zero for non-objects, so we    // use it instead.    program parent_fun = object_program(mod);    if (parent_fun) {    if (ret_obj) ret_obj[0] = mod;    } else if (programp (mod)) {    parent_fun = mod; -  if (objectp (mod = objects[parent_fun]) && ret_obj) ret_obj[0] = mod; +  // When running with debug we might be called before __INIT, so +  // we have to check is objects exists before we use it. +  if (objects && objectp (mod = objects[parent_fun]) && ret_obj) +  ret_obj[0] = mod;    }    else    return ""; // efun       if (mod) {    catch {    string res = sprintf("%O", mod);    if (res != "object" && res != "")    return (objectp (objects[parent_fun]) && programs["/master"] != parent_fun?    res+".":res+"->");