Changeset 8414
- Timestamp:
- May 16, 2009, 5:51:52 AM (14 years ago)
- Location:
- trunk
- Files:
-
- 12 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/daemon/daemon.c
r8393 r8414 301 301 struct evbuffer * buf = tr_getBuffer( ); 302 302 303 tr_bencSaveAsJSON( &settings, buf );303 tr_bencSaveAsJSON( &settings, buf, TRUE ); 304 304 fprintf( stderr, "%s", (char*)EVBUFFER_DATA(buf) ); 305 305 -
trunk/daemon/remote.c
r8389 r8414 619 619 { 620 620 struct evbuffer * buf = tr_getBuffer( ); 621 reqs[reqCount++] = tr_strdup( tr_bencSaveAsJSON( &top, buf ) );621 reqs[reqCount++] = tr_strdup( tr_bencSaveAsJSON( &top, buf, FALSE ) ); 622 622 tr_releaseBuffer( buf ); 623 623 } … … 1262 1262 1263 1263 if( debug ) 1264 fprintf( stderr, "got response :\n--------\n%*.*s\n--------\n",1265 (int)len, (int)len, ( const char*) response );1264 fprintf( stderr, "got response (len %d):\n--------\n%*.*s\n--------\n", 1265 (int)len, (int)len, (int)len, (const char*) response ); 1266 1266 1267 1267 if( tr_jsonParse( response, len, &top, NULL ) ) -
trunk/gtk/tr-core.c
r8404 r8414 1445 1445 tr_core_exec( TrCore * core, const tr_benc * top ) 1446 1446 { 1447 char * json = tr_bencToJSON( top );1447 char * json = tr_bencToJSON( top, FALSE ); 1448 1448 tr_core_exec_json( core, json ); 1449 1449 tr_free( json ); -
trunk/libtransmission/bencode-test.c
r8158 r8414 325 325 326 326 tr_bencLoad( benc_str, strlen( benc_str ), &top, NULL ); 327 serialized = tr_bencSaveAsJSON( &top, buf );327 serialized = tr_bencSaveAsJSON( &top, buf, TRUE ); 328 328 stripWhitespace( serialized ); 329 329 #if 0 -
trunk/libtransmission/bencode.c
r8372 r8414 1181 1181 struct jsonWalk 1182 1182 { 1183 tr_list * parents; 1183 tr_bool doIndent; 1184 tr_list * parents; 1184 1185 struct evbuffer * out; 1185 1186 }; … … 1188 1189 jsonIndent( struct jsonWalk * data ) 1189 1190 { 1190 char buf[1024]; 1191 const int width = tr_list_size( data->parents ) * 4; 1192 1193 buf[0] = '\n'; 1194 memset( buf+1, ' ', width ); 1195 evbuffer_add( data->out, buf, 1+width ); 1191 if( data->doIndent ) 1192 { 1193 char buf[1024]; 1194 const int width = tr_list_size( data->parents ) * 4; 1195 1196 buf[0] = '\n'; 1197 memset( buf+1, ' ', width ); 1198 evbuffer_add( data->out, buf, 1+width ); 1199 } 1196 1200 } 1197 1201 … … 1397 1401 1398 1402 char* 1399 tr_bencSaveAsJSON( const tr_benc * top, struct evbuffer * out )1403 tr_bencSaveAsJSON( const tr_benc * top, struct evbuffer * out, tr_bool doIndent ) 1400 1404 { 1401 1405 struct jsonWalk data; … … 1403 1407 evbuffer_drain( out, EVBUFFER_LENGTH( out ) ); 1404 1408 1409 data.doIndent = doIndent; 1405 1410 data.out = out; 1406 1411 data.parents = NULL; … … 1415 1420 1416 1421 char* 1417 tr_bencToJSON( const tr_benc * top )1422 tr_bencToJSON( const tr_benc * top, tr_bool doIndent ) 1418 1423 { 1419 1424 char * ret; 1420 1425 struct evbuffer * buf = evbuffer_new( ); 1421 tr_bencSaveAsJSON( top, buf );1426 tr_bencSaveAsJSON( top, buf, doIndent ); 1422 1427 ret = tr_strndup( EVBUFFER_DATA( buf ), EVBUFFER_LENGTH( buf ) ); 1423 1428 evbuffer_free( buf ); … … 1562 1567 { 1563 1568 struct evbuffer * buf = tr_getBuffer( ); 1564 const char * json = tr_bencSaveAsJSON( b, buf );1569 const char * json = tr_bencSaveAsJSON( b, buf, TRUE ); 1565 1570 const int err = saveFile( filename, json, EVBUFFER_LENGTH( buf ) ); 1566 1571 tr_releaseBuffer( buf ); -
trunk/libtransmission/bencode.h
r8268 r8414 85 85 char* tr_bencSave( const tr_benc * val, int * len ); 86 86 87 char* tr_bencSaveAsJSON( const tr_benc * top, struct evbuffer * out );88 89 char* tr_bencToJSON( const tr_benc * top );87 char* tr_bencSaveAsJSON( const tr_benc * top, struct evbuffer * out, tr_bool doIndent ); 88 89 char* tr_bencToJSON( const tr_benc * top, tr_bool doIndent ); 90 90 91 91 int tr_bencSaveFile( const char * filename, const tr_benc * ); -
trunk/libtransmission/json-test.c
r8158 r8414 75 75 check( tr_bencDictFindStr( &top, "key", &str ) ); 76 76 check( !strcmp( str, "Letöltések" ) ); 77 json = tr_bencSaveAsJSON( &top, buf );77 json = tr_bencSaveAsJSON( &top, buf, TRUE ); 78 78 if( !err ) 79 79 tr_bencFree( &top ); -
trunk/libtransmission/rpc-server.c
r8400 r8414 270 270 tr_bencDictAddStr( args, "metainfo", b64 ); 271 271 tr_bencDictAddBool( args, "paused", paused ); 272 tr_bencSaveAsJSON( &top, json );272 tr_bencSaveAsJSON( &top, json, FALSE ); 273 273 tr_rpc_request_exec_json( server->session, 274 274 EVBUFFER_DATA( json ), -
trunk/libtransmission/rpcimpl.c
r8412 r8414 93 93 tr_bencDictAddStr( data->response, "result", result ); 94 94 95 tr_bencSaveAsJSON( data->response, buf );95 tr_bencSaveAsJSON( data->response, buf, FALSE ); 96 96 (*data->callback)( data->session, (const char*)EVBUFFER_DATA(buf), 97 97 EVBUFFER_LENGTH(buf), data->callback_user_data ); … … 1337 1337 if( tr_bencDictFindInt( request, "tag", &tag ) ) 1338 1338 tr_bencDictAddInt( &response, "tag", tag ); 1339 tr_bencSaveAsJSON( &response, buf );1339 tr_bencSaveAsJSON( &response, buf, FALSE ); 1340 1340 (*callback)( session, (const char*)EVBUFFER_DATA(buf), 1341 1341 EVBUFFER_LENGTH( buf ), callback_user_data ); … … 1359 1359 if( tr_bencDictFindInt( request, "tag", &tag ) ) 1360 1360 tr_bencDictAddInt( &response, "tag", tag ); 1361 tr_bencSaveAsJSON( &response, buf );1361 tr_bencSaveAsJSON( &response, buf, FALSE ); 1362 1362 (*callback)( session, (const char*)EVBUFFER_DATA(buf), 1363 1363 EVBUFFER_LENGTH(buf), callback_user_data ); -
trunk/libtransmission/torrent.c
r8413 r8414 1065 1065 else 1066 1066 { 1067 const tr_block_index_t firstBlockOfLastPiece = tr_torPieceFirstBlock( tor, f->lastPiece ); 1068 const tr_block_index_t lastBlockOfFirstPiece = tr_torPieceFirstBlock( tor, f->firstPiece ) 1069 + tr_torPieceCountBlocks( tor, f->firstPiece ) 1070 - 1; 1067 int64_t b = 0; 1068 const tr_block_index_t firstBlockOfLastPiece 1069 = tr_torPieceFirstBlock( tor, f->lastPiece ); 1070 const tr_block_index_t lastBlockOfFirstPiece 1071 = tr_torPieceFirstBlock( tor, f->firstPiece ) 1072 + tr_torPieceCountBlocks( tor, f->firstPiece ) - 1; 1073 1071 1074 /* the rest of the first piece */ 1072 1075 for( i=firstBlock+1; i<lastBlock && i<=lastBlockOfFirstPiece; ++i ) 1073 1076 if( tr_cpBlockIsCompleteFast( &tor->completion, i ) ) 1074 total += tor->blockSize;1077 ++b; 1075 1078 1076 1079 /* the middle pieces */ 1077 if( f->firstPiece + 1 < f->lastPiece ) { 1078 uint64_t b = tor->blockCountInPiece * ( f->lastPiece - ( f->firstPiece + 1 ) ); 1080 if( f->firstPiece + 1 < f->lastPiece ) 1079 1081 for( i=f->firstPiece+1; i<f->lastPiece; ++i ) 1080 b -= tr_cpMissingBlocksInPiece( &tor->completion, i ); 1081 b *= tor->blockSize; 1082 total += b; 1083 } 1082 b += tor->blockCountInPiece - tr_cpMissingBlocksInPiece( &tor->completion, i ); 1084 1083 1085 1084 /* the rest of the last piece */ 1086 1085 for( i=firstBlockOfLastPiece; i<lastBlock; ++i ) 1087 1086 if( tr_cpBlockIsCompleteFast( &tor->completion, i ) ) 1088 total += tor->blockSize; 1087 ++b; 1088 1089 b *= tor->blockSize; 1090 total += b; 1089 1091 } 1090 1092 -
trunk/qt/prefs.cc
r8401 r8414 218 218 219 219 /* write back out the serialized preferences */ 220 char * json = tr_bencToJSON( &top );220 char * json = tr_bencToJSON( &top, TRUE ); 221 221 if( json && *json ) { 222 222 file.open( QIODevice::WriteOnly | QIODevice::Text ); -
trunk/qt/session.cc
r8405 r8414 532 532 Session :: exec( const tr_benc * request ) 533 533 { 534 char * str( tr_bencToJSON( request ) );534 char * str( tr_bencToJSON( request, FALSE ) ); 535 535 exec( str ); 536 536 tr_free( str );
Note: See TracChangeset
for help on using the changeset viewer.