pike.git / src / stralloc.c

version» Context lines:

pike.git/src/stralloc.c:489:    INT32 size;    struct pike_string *ret;    char *buf;       size = a->len + b->len;       ret=begin_shared_string(size);    buf=ret->str;    MEMCPY(buf,a->str,a->len);    MEMCPY(buf+a->len,b->str,b->len); -  ret=end_shared_string(ret); +  return end_shared_string(ret); + }    -  return ret; + struct pike_string *add_and_free_shared_strings(struct pike_string *a, +  struct pike_string *b) + { +  INT32 alen=a->len; +  a=realloc_shared_string(a,alen + b->len); +  MEMCPY(a->str+alen,b->str,b->len); +  free_string(b); +  return end_shared_string(a);   }      /*** replace function ***/   struct pike_string *string_replace(struct pike_string *str,    struct pike_string *del,    struct pike_string *to)   {    struct pike_string *ret;    char *s,*tmp,*r,*end;    struct mem_searcher searcher;