Branch: Tag:

1998-10-14

1998-10-14 05:51:20 by Fredrik Hübinette (Hubbe) <hubbe@hubbe.net>

lots of wide-string stuff

Rev: bin/test_pike.pike:1.14
Rev: src/array.c:1.41
Rev: src/builtin_functions.c:1.129
Rev: src/modules/sprintf/sprintf.c:1.28
Rev: src/operators.c:1.43
Rev: src/pike_memory.c:1.27
Rev: src/stralloc.c:1.43
Rev: src/stralloc.h:1.21
Rev: src/testsuite.in:1.126

19:   #include "gc.h"   #include "main.h"    - RCSID("$Id: array.c,v 1.40 1998/10/11 11:18:50 hubbe Exp $"); + RCSID("$Id: array.c,v 1.41 1998/10/14 05:48:44 hubbe Exp $");      struct array empty_array=   {
1424:   struct pike_string *implode(struct array *a,struct pike_string *del)   {    INT32 len,e, inited; -  char *r; +  PCHARP r;    struct pike_string *ret,*tmp;    int max_shift=0;   
1439:    max_shift=ITEM(a)[e].u.string->size_shift;    }    } +  if(del->size_shift > max_shift) max_shift=del->size_shift;    if(len) len-=del->len;       ret=begin_wide_shared_string(len,max_shift); -  r=ret->str; +  r=MKPCHARP_STR(ret);    inited=0;    for(e=0;e<a->size;e++)    {
1450:    {    if(inited)    { -  pike_string_cpy(r,max_shift,del); -  r+=del->len << max_shift; +  pike_string_cpy(r,del); +  INC_PCHARP(r,del->len);    }    inited=1;    tmp=ITEM(a)[e].u.string; -  pike_string_cpy(r,max_shift,tmp); -  r+=tmp->len << max_shift; +  pike_string_cpy(r,tmp); +  INC_PCHARP(r,tmp->len);    len++;    }    } -  return end_shared_string(ret); +  return low_end_shared_string(ret);   }      struct array *copy_array_recursively(struct array *a,struct processing *p)