Changeset 7939


Ignore:
Timestamp:
Feb 23, 2009, 3:26:01 AM (13 years ago)
Author:
charles
Message:

(trunk daemon) #1819: Indicate torrent error in list

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/daemon/remote.c

    r7903 r7939  
    273273
    274274static const char * list_keys[] = {
     275    "error",
    275276    "errorString",
    276277    "eta",
     
    751752        case TR_STATUS_DOWNLOAD:
    752753        case TR_STATUS_SEED: {
    753             const char * err = NULL;
    754             if( tr_bencDictFindStr( t, "errorString", &err ) && err && *err )
    755                 tr_strlcpy( buf, err, buflen );
    756             else {
    757                 int64_t fromUs = 0;
    758                 int64_t toUs = 0;
    759                 tr_bencDictFindInt( t, "peersGettingFromUs", &fromUs );
    760                 tr_bencDictFindInt( t, "peersSendingToUs", &toUs );
    761                 if( !fromUs && !toUs )
    762                     tr_strlcpy( buf, "Idle", buflen );
    763                 else if( fromUs && toUs )
    764                     tr_strlcpy( buf, "Up & Down", buflen );
    765                 else if( toUs )
    766                     tr_strlcpy( buf, "Downloading", buflen );
    767                 else if( fromUs ) {
    768                     int64_t leftUntilDone = 0;
    769                     tr_bencDictFindInt( t, "leftUntilDone", &leftUntilDone );
    770                     if( leftUntilDone > 0 )
    771                         tr_strlcpy( buf, "Uploading", buflen );
    772                     else
    773                         tr_strlcpy( buf, "Seeding", buflen );
    774                 }
     754            int64_t fromUs = 0;
     755            int64_t toUs = 0;
     756            tr_bencDictFindInt( t, "peersGettingFromUs", &fromUs );
     757            tr_bencDictFindInt( t, "peersSendingToUs", &toUs );
     758            if( fromUs && toUs )
     759                tr_strlcpy( buf, "Up & Down", buflen );
     760            else if( toUs )
     761                tr_strlcpy( buf, "Downloading", buflen );
     762            else if( fromUs ) {
     763                int64_t leftUntilDone = 0;
     764                tr_bencDictFindInt( t, "leftUntilDone", &leftUntilDone );
     765                if( leftUntilDone > 0 )
     766                    tr_strlcpy( buf, "Uploading", buflen );
     767                else
     768                    tr_strlcpy( buf, "Seeding", buflen );
     769            } else {
     770                tr_strlcpy( buf, "Idle", buflen );
    775771            }
    776772            break;
     
    11451141    {
    11461142        int i, n;
    1147         printf( "%-4s  %-4s  %9s  %-8s  %6s  %6s  %-5s  %-11s  %s\n",
     1143        printf( "%-4s   %-4s  %9s  %-8s  %6s  %6s  %-5s  %-11s  %s\n",
    11481144                "ID", "Done", "Have", "ETA", "Up", "Down", "Ratio", "Status",
    11491145                "Name" );
     
    11701166                char haveStr[32];
    11711167                char doneStr[8];
     1168                int64_t error;
     1169                char errorMark;
    11721170
    11731171                if( sizeWhenDone )
     
    11821180                else
    11831181                    tr_snprintf( etaStr, sizeof( etaStr ), "Done" );
     1182                if( tr_bencDictFindInt( d, "error", &error ) && error )
     1183                    errorMark = '*';
     1184                else
     1185                    errorMark = ' ';
    11841186                printf(
    1185                     "%4d  %4s  %9s  %-8s  %6.1f  %6.1f  %5s  %-11s  %s\n",
    1186                     (int)id,
     1187                    "%4d%c  %4s  %9s  %-8s  %6.1f  %6.1f  %5s  %-11s  %s\n",
     1188                    (int)id, errorMark,
    11871189                    doneStr,
    11881190                    haveStr,
Note: See TracChangeset for help on using the changeset viewer.