]> granicus.if.org Git - transmission/commitdiff
* When loading a torrent, warn if no announce URLs are found.
authorCharles Kerr <charles@transmissionbt.com>
Thu, 29 May 2008 00:38:31 +0000 (00:38 +0000)
committerCharles Kerr <charles@transmissionbt.com>
Thu, 29 May 2008 00:38:31 +0000 (00:38 +0000)
* When possible, use the torrent name in metainfo warning messages.

libtransmission/metainfo.c

index 43e9a57fd2d332b9a555b44ee32766a52a252525..367a70eab5f457f8a78fb9d0c5f7cd26e4126c6d 100644 (file)
@@ -260,7 +260,7 @@ getannounce( tr_info * inf, tr_benc * meta )
 
         /* did we use any of the tiers? */
         if( !trackerCount ) {
-            tr_inf( _( "Invalid metadata entry \"%s\"" ), "announce-list" );
+            tr_nerr( inf->name, _( "Invalid metadata entry \"%s\"" ), "announce-list" );
             tr_free( trackers );
             trackers = NULL;
         }
@@ -281,6 +281,9 @@ getannounce( tr_info * inf, tr_benc * meta )
     inf->trackers = trackers;
     inf->trackerCount = trackerCount;
 
+    if( !inf->trackerCount )
+        tr_nerr( inf->name, _( "Invalid metadata entry \"%s\"" ), "announce" );
+
     return inf->trackerCount ? TR_OK : TR_ERROR;
 }
 
@@ -348,9 +351,9 @@ tr_metainfoParse( const tr_handle  * handle,
     if( !tr_bencIsInt( val ) )
     {
         if( val )
-            tr_err( _( "Invalid metadata entry \"%s\"" ), "piece length" );
+            tr_nerr( inf->name, _( "Invalid metadata entry \"%s\"" ), "piece length" );
         else
-            tr_err( _( "Missing metadata entry \"%s\"" ), "piece length" );
+            tr_nerr( inf->name, _( "Missing metadata entry \"%s\"" ), "piece length" );
         goto fail;
     }
     inf->pieceSize = val->val.i;
@@ -360,14 +363,14 @@ tr_metainfoParse( const tr_handle  * handle,
     if( !tr_bencIsString( val ) )
     {
         if( val )
-            tr_err( _( "Invalid metadata entry \"%s\"" ), "pieces" );
+            tr_nerr( inf->name, _( "Invalid metadata entry \"%s\"" ), "pieces" );
         else
-            tr_err( _( "Missing metadata entry \"%s\"" ), "pieces" );
+            tr_nerr( inf->name, _( "Missing metadata entry \"%s\"" ), "pieces" );
         goto fail;
     }
     if( val->val.s.i % SHA_DIGEST_LENGTH )
     {
-        tr_err( _( "Invalid metadata entry \"%s\"" ), "pieces" );
+        tr_nerr( inf->name, _( "Invalid metadata entry \"%s\"" ), "pieces" );
         goto fail;
     }
     inf->pieceCount = val->val.s.i / SHA_DIGEST_LENGTH;
@@ -391,7 +394,7 @@ tr_metainfoParse( const tr_handle  * handle,
 
     if( !inf->fileCount || !inf->totalSize )
     {
-        tr_err( _( "Torrent is corrupt" ) ); /* the content is missing! */
+        tr_nerr( inf->name, _( "Torrent is corrupt" ) ); /* the content is missing! */
         goto fail;
     }
 
@@ -400,7 +403,7 @@ tr_metainfoParse( const tr_handle  * handle,
     if( (uint64_t) inf->pieceCount !=
         ( inf->totalSize + inf->pieceSize - 1 ) / inf->pieceSize )
     {
-        tr_err( _( "Torrent is corrupt" ) ); /* size of hashes and files don't match */
+        tr_nerr( inf->name, _( "Torrent is corrupt" ) ); /* size of hashes and files don't match */
         goto fail;
     }
 
@@ -558,18 +561,18 @@ parseFiles( tr_info * inf, tr_benc * name,
             if( getfile( &inf->files[ii].name, inf->name, path ) )
             {
                 if( path )
-                    tr_err( _( "Invalid metadata entry \"%s\"" ), "path" );
+                    tr_nerr( inf->name, _( "Invalid metadata entry \"%s\"" ), "path" );
                 else
-                    tr_err( _( "Missing metadata entry \"%s\"" ), "path" );
+                    tr_nerr( inf->name, _( "Missing metadata entry \"%s\"" ), "path" );
                 return TR_EINVALID;
             }
             length = tr_bencDictFind( item, "length" );
             if( !tr_bencIsInt( length ) )
             {
                 if( length )
-                    tr_err( _( "Invalid metadata entry \"%s\"" ), "length" );
+                    tr_nerr( inf->name, _( "Invalid metadata entry \"%s\"" ), "length" );
                 else
-                    tr_err( _( "Missing metadata entry \"%s\"" ), "length" );
+                    tr_nerr( inf->name, _( "Missing metadata entry \"%s\"" ), "length" );
                 return TR_EINVALID;
             }
             inf->files[ii].length = length->val.i;
@@ -598,7 +601,7 @@ parseFiles( tr_info * inf, tr_benc * name,
     }
     else
     {
-        tr_err( _( "Invalid or missing metadata entries \"length\" and \"files\"" ) );
+        tr_nerr( inf->name, _( "Invalid or missing metadata entries \"length\" and \"files\"" ) );
     }
 
     return TR_OK;