Branch: Tag:

2022-07-06

2022-07-06 11:01:35 by Henrik Grubbström (Grubba) <grubba@grubba.org>

EFUNs: Fix support for reverse() on subranges of strings.

Fixes #10084.

2:   || 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: builtin_functions.c,v 1.685 2008/08/22 15:33:50 grubba Exp $ + || $Id$   */      #include "global.h"
3507:    for(e=0;e<start;e++)    STR0(s)[e]=STR0(orig)[e];    for(;e<end;e++) -  STR0(s)[e]=STR0(orig)[end-1-e-start]; +  STR0(s)[e]=STR0(orig)[end-1-e+start];    for(;e<orig->len;e++)    STR0(s)[e]=STR0(orig)[e];    break;
3516:    for(e=0;e<start;e++)    STR1(s)[e]=STR1(orig)[e];    for(;e<end;e++) -  STR1(s)[e]=STR1(orig)[end-1-e-start]; +  STR1(s)[e]=STR1(orig)[end-1-e+start];    for(;e<orig->len;e++)    STR1(s)[e]=STR1(orig)[e];    break;
3525:    for(e=0;e<start;e++)    STR2(s)[e]=STR2(orig)[e];    for(;e<end;e++) -  STR2(s)[e]=STR2(orig)[end-1-e-start]; +  STR2(s)[e]=STR2(orig)[end-1-e+start];    for(;e<orig->len;e++)    STR2(s)[e]=STR2(orig)[e];    break;
3538:    for(e=0;e<start;e++)    STR0(s)[e]=STR0(orig)[e];    for(;e<end;e++) -  STR0(s)[e]=STR0(orig)[end-1-e-start]; +  STR0(s)[e]=STR0(orig)[end-1-e+start];    for(;e<orig->len;e++)    STR0(s)[e]=STR0(orig)[e];    break;
3547:    for(e=0;e<start;e++)    STR1(s)[e]=STR1(orig)[e];    for(;e<end;e++) -  STR1(s)[e]=STR1(orig)[end-1-e-start]; +  STR1(s)[e]=STR1(orig)[end-1-e+start];    for(;e<orig->len;e++)    STR1(s)[e]=STR1(orig)[e];    break;
3556:    for(e=0;e<start;e++)    STR2(s)[e]=STR2(orig)[e];    for(;e<end;e++) -  STR2(s)[e]=STR2(orig)[end-1-e-start]; +  STR2(s)[e]=STR2(orig)[end-1-e+start];    for(;e<orig->len;e++)    STR2(s)[e]=STR2(orig)[e];    break;