pike.git / src / stralloc.c

version» Context lines:

pike.git/src/stralloc.c:1580:    return generic_quick_binary_strcmp(a->str, a->len, a->size_shift,    b->str, b->len, b->size_shift);   }         struct pike_string *realloc_unlinked_string(struct pike_string *a,    ptrdiff_t size)   {    char * s = NULL;    size_t nbytes = (size_t)(size+1) << a->size_shift; -  size_t obytes = (size_t)(a->len+1) << a->size_shift; +  size_t obytes = (size_t)a->len << a->size_shift;       if( size < a->len && size-a->len<(signed)sizeof(void*) )    goto done;       if( nbytes < sizeof(struct pike_string) )    {    if( a->alloc_type == STRING_ALLOC_BA )    goto done;    s = ba_alloc(&string_allocator);    memcpy(s, a->str, MINIMUM(nbytes,obytes));