diff options
-rw-r--r-- | opentracker.c | 1 | ||||
-rw-r--r-- | trackerlogic.c | 8 |
2 files changed, 6 insertions, 3 deletions
diff --git a/opentracker.c b/opentracker.c index a2fe24e..87e8b6f 100644 --- a/opentracker.c +++ b/opentracker.c | |||
@@ -374,6 +374,7 @@ SCRAPE_WORKAROUND: | |||
374 | LOG_TO_STDERR( "scrp: %d.%d.%d.%d - FULL SCRAPE\n", h->ip[0], h->ip[1], h->ip[2], h->ip[3] ); | 374 | LOG_TO_STDERR( "scrp: %d.%d.%d.%d - FULL SCRAPE\n", h->ip[0], h->ip[1], h->ip[2], h->ip[3] ); |
375 | 375 | ||
376 | if( !( reply_size = return_fullscrape_for_tracker( &reply ) ) ) HTTPERROR_500; | 376 | if( !( reply_size = return_fullscrape_for_tracker( &reply ) ) ) HTTPERROR_500; |
377 | if( (c = realloc( reply, reply_size ) ) ) reply = c; | ||
377 | ot_overall_tcp_successfulannounces++; | 378 | ot_overall_tcp_successfulannounces++; |
378 | return sendmallocdata( s, reply, reply_size ); | 379 | return sendmallocdata( s, reply, reply_size ); |
379 | } | 380 | } |
diff --git a/trackerlogic.c b/trackerlogic.c index 239efb8..37b3c4d 100644 --- a/trackerlogic.c +++ b/trackerlogic.c | |||
@@ -325,9 +325,11 @@ size_t return_fullscrape_for_tracker( char **reply ) { | |||
325 | peers += peer_list->peers[k].size; | 325 | peers += peer_list->peers[k].size; |
326 | seeds += peer_list->seed_count[k]; | 326 | seeds += peer_list->seed_count[k]; |
327 | } | 327 | } |
328 | *r++='2'; *r++='0'; *r++=':'; | 328 | if( peers ) { |
329 | memmove( r, hash, 20 ); r+=20; | 329 | *r++='2'; *r++='0'; *r++=':'; |
330 | r += sprintf( r, "d8:completei%zde10:downloadedi%zde10:incompletei%zdee", seeds, peer_list->downloaded, peers-seeds ); | 330 | memmove( r, hash, 20 ); r+=20; |
331 | r += sprintf( r, "d8:completei%zde10:downloadedi%zde10:incompletei%zdee", seeds, peer_list->downloaded, peers-seeds ); | ||
332 | } | ||
331 | } | 333 | } |
332 | } | 334 | } |
333 | 335 | ||