pike.git / src / modules / _Roxen / roxen.c

version» Context lines:

pike.git/src/modules/_Roxen/roxen.c:1:   /*   || 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: roxen.c,v 1.47 2005/11/28 14:53:47 per Exp $ + || $Id: roxen.c,v 1.48 2006/01/02 02:42:02 nilsson Exp $   */      #define NO_PIKE_SHORTHAND      #include "global.h"   #include "config.h"         #include "machine.h"   
pike.git/src/modules/_Roxen/roxen.c:208:    /* Check for continuation line. */    } while ((os < l) && ((in[os] == ' ') || (in[os] == '\t')));       if (val_cnt > 1) {    /* Join partial header values. */    f_add(val_cnt);    }       if((tmp = low_mapping_lookup(headers, Pike_sp-2)))    { -  f_aggregate( 1 ); +     if( tmp->type == PIKE_T_ARRAY )    { -  +  f_aggregate( 1 );    ref_push_array(tmp->u.array);    map_delete(headers, Pike_sp-3);    f_add(2);    } else {    ref_push_string(tmp->u.string); -  f_aggregate(1); +  stack_swap(); +  f_aggregate(2);    map_delete(headers, Pike_sp-3); -  f_add(2); +     }    }    mapping_insert(headers, Pike_sp-2, Pike_sp-1);       pop_n_elems(2);    }    }    push_mapping( headers );    f_aggregate( 3 ); /* data, firstline, headers */   }