]> granicus.if.org Git - transmission/commitdiff
Show whether a tracker is http or udp. Without that context, it could be confusing...
authorJordan Lee <jordan@transmissionbt.com>
Tue, 15 Mar 2011 17:03:09 +0000 (17:03 +0000)
committerJordan Lee <jordan@transmissionbt.com>
Tue, 15 Mar 2011 17:03:09 +0000 (17:03 +0000)
gtk/details.c
libtransmission/announcer.c

index 3d4bbb728443697d496bbb725500f8a5007fb696..c296de02a2f5ef7d3111fbf8de575e958b9d94d0 100644 (file)
@@ -1794,15 +1794,11 @@ buildTrackerSummary( const char * key, const tr_tracker_stat * st, gboolean show
 
     /* hostname */
     {
-        const char * host = st->host;
-        const char * pch = strstr( host, "://" );
-        if( pch )
-            host = pch + 3;
         g_string_append( gstr, st->isBackup ? "<i>" : "<b>" );
         if( key )
-            str = g_markup_printf_escaped( "%s - %s", host, key );
+            str = g_markup_printf_escaped( "%s - %s", st->host, key );
         else
-            str = g_markup_printf_escaped( "%s", host );
+            str = g_markup_printf_escaped( "%s", st->host );
         g_string_append( gstr, str );
         g_free( str );
         g_string_append( gstr, st->isBackup ? "</i>" : "</b>" );
index c1be5fd59bde15498bce33337b827c9364547580..d4bff777dd1b3ae22c6d99a92dbc3de4ec37a5c6 100644 (file)
@@ -213,12 +213,16 @@ tr_tracker;
 static char *
 getKey( const char * url )
 {
-    int port = 0;
-    char * host = NULL;
     char * ret;
-    tr_urlParse( url, -1, NULL, &host, &port, NULL );
-    ret = tr_strdup_printf( "%s:%d", ( host ? host : "invalid" ), port );
+    char * scheme = NULL;
+    char * host = NULL;
+    int port = 0;
+
+    tr_urlParse( url, -1, &scheme, &host, &port, NULL );
+    ret = tr_strdup_printf( "%s://%s:%d", (scheme?scheme:"invalid"), (host?host:"invalid"), port );
+
     tr_free( host );
+    tr_free( scheme );
     return ret;
 }