Ignore:
Timestamp:
Mar 31, 2007, 5:40:28 PM (15 years ago)
Author:
joshe
Message:

Remove tr_bencListIter(), it was a stupid idea.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/libtransmission/bencode.c

    r1607 r1612  
    9191
    9292        tr_bencInitInt( val, num );
    93         val->end = p + 1;
     93        *end = p + 1;
    9494    }
    9595    else if( buf[0] == 'l' || buf[0] == 'd' )
     
    134134        }
    135135
    136         val->end = cur + 1;
     136        *end = cur + 1;
    137137    }
    138138    else
     
    167167        tr_bencInitStr( val, sbuf, slen, 0 );
    168168
    169         val->end = p + 1 + val->val.s.i;
     169        *end = p + 1 + val->val.s.i;
    170170    }
    171171
    172172    val->begin = buf;
    173     *end = val->end;
     173    val->end   = *end;
    174174
    175175    return 0;
     
    244244benc_val_t * tr_bencDictFind( benc_val_t * val, const char * key )
    245245{
    246     int len, i;
     246    int len, ii;
    247247
    248248    if( val->type != TYPE_DICT )
     
    253253    len = strlen( key );
    254254   
    255     for( i = 0; i < val->val.l.count; i += 2 )
    256     {
    257         if( TYPE_STR != val->val.l.vals[i].type ||
    258             len != val->val.l.vals[i].val.s.i )
     255    for( ii = 0; ii + 1 < val->val.l.count; ii += 2 )
     256    {
     257        if( TYPE_STR  != val->val.l.vals[ii].type ||
     258            len       != val->val.l.vals[ii].val.s.i ||
     259            0 != memcmp( val->val.l.vals[ii].val.s.s, key, len ) )
    259260        {
    260261            continue;
    261262        }
    262         if( 0 == memcmp(val->val.l.vals[i].val.s.s, key, len ) )
    263         {
    264             return &val->val.l.vals[i+1];
    265         }
     263        return &val->val.l.vals[ii+1];
    266264    }
    267265
     
    287285
    288286    return ret;
    289 }
    290 
    291 benc_val_t * tr_bencListIter( benc_val_t * list, int * pos )
    292 {
    293     assert( TYPE_LIST == list->type );
    294 
    295     if( NULL == list->val.l.vals )
    296     {
    297         return NULL;
    298     }
    299 
    300     if( 0 > *pos )
    301     {
    302         *pos = 0;
    303     }
    304 
    305     if( list->val.l.count <= *pos )
    306     {
    307         return NULL;
    308     }
    309 
    310     (*pos)++;
    311 
    312     return &list->val.l.vals[ (*pos) - 1 ];
    313287}
    314288
Note: See TracChangeset for help on using the changeset viewer.