I think it used to be faster to count down and compare against zero on some
CPU's (probably 680x0 or so), and you do see that a bit in the ancient X code.

I can't see any other reason to do the counting this way here, so will look into
turning it around.

        -alan-

On 02/ 5/11 02:47 AM, walter harms wrote:
> 
> 
>           for (i = num_typed_args - typed[j]; i > 0; i--, arg++) {
> 
> IMHO this violates the rule of least surprise. the other way around is much 
> more
> common. Since i is only a counter i do not see why we need to count down.
> (More adventures people may want to use memmove, but i did not see the rest 
> of code)
> 
>                   for (i=0; i < num_typed_args - typed[j]; i++) {
>                       *arg = *(arg+1);
>                       arg++;
>                   }
> 
> just my 2 cents,
> 
> re,
>  wh
> 
> 
> 
> Am 05.02.2011 07:29, schrieb Alan Coopersmith:
>> Fix originally created by Leo Binchy for Sun to fix Solaris bug 1211553:
>>  XtVaCreateManagedWidget with list of resources XtVaTypedArg cause core dump
>>
>> Signed-off-by: Alan Coopersmith <[email protected]>
>> ---
>>  src/Resources.c |    2 +-
>>  1 files changed, 1 insertions(+), 1 deletions(-)
>>
>> diff --git a/src/Resources.c b/src/Resources.c
>> index 304d3d5..dc0f563 100644
>> --- a/src/Resources.c
>> +++ b/src/Resources.c
>> @@ -857,7 +857,7 @@ static XtCacheRef *GetResources(
>>                  register XtTypedArg* arg = typed_args + typed[j] - 1;
>>                  register int i;
>>  
>> -                for (i = num_typed_args - typed[j]; i; i--, arg++) {
>> +                for (i = num_typed_args - typed[j]; i > 0; i--, arg++) {
>>                      *arg = *(arg+1);
>>                  }
>>                  num_typed_args--;


-- 
        -Alan Coopersmith-        [email protected]
         Oracle Solaris Platform Engineering: X Window System

_______________________________________________
[email protected]: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

Reply via email to