Ignore:
Timestamp:
Mar 22, 2011, 11:42:25 PM (11 years ago)
Author:
jordan
Message:

(trunk libT) tr_set_compare() is only used in one place, so make it a private function there instead of leaving it public in utils.h

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/libtransmission/utils.c

    r12204 r12209  
    354354{
    355355    return memcpy( tr_malloc( byteCount ), src, byteCount );
    356 }
    357 
    358 /***
    359 ****
    360 ***/
    361 
    362 void
    363 tr_set_compare( const void * va, size_t aCount,
    364                 const void * vb, size_t bCount,
    365                 int compare( const void * a, const void * b ),
    366                 size_t elementSize,
    367                 tr_set_func in_a_cb,
    368                 tr_set_func in_b_cb,
    369                 tr_set_func in_both_cb,
    370                 void * userData )
    371 {
    372     const uint8_t * a = va;
    373     const uint8_t * b = vb;
    374     const uint8_t * aend = a + elementSize * aCount;
    375     const uint8_t * bend = b + elementSize * bCount;
    376 
    377     while( a != aend || b != bend )
    378     {
    379         if( a == aend )
    380         {
    381             ( *in_b_cb )( (void*)b, userData );
    382             b += elementSize;
    383         }
    384         else if( b == bend )
    385         {
    386             ( *in_a_cb )( (void*)a, userData );
    387             a += elementSize;
    388         }
    389         else
    390         {
    391             const int val = ( *compare )( a, b );
    392 
    393             if( !val )
    394             {
    395                 ( *in_both_cb )( (void*)a, userData );
    396                 a += elementSize;
    397                 b += elementSize;
    398             }
    399             else if( val < 0 )
    400             {
    401                 ( *in_a_cb )( (void*)a, userData );
    402                 a += elementSize;
    403             }
    404             else if( val > 0 )
    405             {
    406                 ( *in_b_cb )( (void*)b, userData );
    407                 b += elementSize;
    408             }
    409         }
    410     }
    411356}
    412357
Note: See TracChangeset for help on using the changeset viewer.