pike.git / src / encode.c

version» Context lines:

pike.git/src/encode.c:4260:       /* Attempt to avoid infinite recursion on circular structures. */    for (data = current_decode; data; data=data->next) {    if (data->raw == tmp &&    (codec ? data->codec == codec : !data->explicit_codec)   #ifdef PIKE_THREADS    && data->thread_state == Pike_interpreter.thread_state   #endif    ) {    struct svalue *res; -  struct svalue val = SVALUE_INIT_INT (0); +  struct svalue val = SVALUE_INIT_INT (COUNTER_START); + #ifndef HAVE_UNION_INIT    val.u.integer = COUNTER_START; -  + #endif    if ((res = low_mapping_lookup(data->decoded, &val))) {    push_svalue(res);    return 1;    }    /* Possible recursion detected. */    /* return 0; */    }    }       data=ALLOC_STRUCT(decode_data);