Changeset 10852
Legend:
- Unmodified
- Added
- Removed
-
trunk/gtk/tr-core.c
r10829 r10852 1019 1019 TrCore * core; 1020 1020 tr_ctor * ctor; 1021 GtkDialog * dialog; 1021 char * url; 1022 char * error; 1023 int response_code; 1022 1024 }; 1023 1025 … … 1026 1028 { 1027 1029 struct url_dialog_data * data = vdata; 1028 tr_core_add_ctor( data->core, data->ctor ); 1030 1031 if( data->response_code != 200 ) 1032 { 1033 gtr_http_failure_dialog( NULL, data->url, data->response_code ); 1034 } 1035 else 1036 { 1037 const gboolean doPrompt = pref_flag_get( PREF_KEY_OPTIONS_PROMPT ); 1038 const gboolean doNotify = FALSE; 1039 const int err = add_ctor( data->core, data->ctor, doPrompt, doNotify ); 1040 1041 if( err == TR_PARSE_ERR ) 1042 tr_core_errsig( data->core, TR_PARSE_ERR, data->url ); 1043 1044 tr_core_torrents_added( data->core ); 1045 } 1046 1047 /* cleanup */ 1048 g_free( data->url ); 1029 1049 g_free( data ); 1030 1050 return FALSE; … … 1032 1052 1033 1053 static void 1034 onURLDone( tr_session 1035 long response_code UNUSED,1036 const void 1037 size_t 1038 void 1054 onURLDone( tr_session * session, 1055 long response_code, 1056 const void * response, 1057 size_t response_byte_count, 1058 void * vdata ) 1039 1059 { 1040 1060 struct url_dialog_data * data = vdata; 1041 tr_ctor * ctor = tr_ctorNew( session ); 1042 1043 /* FIME: error dialog */ 1044 1045 if( tr_ctorSetMetainfo( ctor, response, response_byte_count ) ) 1046 { 1047 tr_ctorFree( ctor ); 1048 g_free( data ); 1049 } 1050 else /* move the work back to the gtk thread */ 1051 { 1052 data->ctor = ctor; 1053 gtr_idle_add( onURLDoneIdle, data ); 1054 } 1061 1062 data->response_code = response_code; 1063 data->ctor = tr_ctorNew( session ); 1064 tr_core_apply_defaults( data->ctor ); 1065 tr_ctorSetMetainfo( data->ctor, response, response_byte_count ); 1066 1067 gtr_idle_add( onURLDoneIdle, data ); 1055 1068 } 1056 1069 … … 1085 1098 struct url_dialog_data * data = g_new( struct url_dialog_data, 1 ); 1086 1099 data->core = core; 1100 data->url = g_strdup( url ); 1087 1101 tr_webRun( session, url, NULL, onURLDone, data ); 1088 1102 } -
trunk/gtk/tr-torrent.c
r10706 r10852 157 157 completenessChangedCallback( tr_torrent * tor, 158 158 tr_completeness completeness, 159 tr_bool wasRunning, 159 160 void * user_data ) 160 161 { 161 if( ( completeness != TR_LEECH ) && ( tr_torrentStat( tor )->sizeWhenDone != 0 ) )162 if( wasRunning && ( completeness != TR_LEECH ) && ( tr_torrentStat( tor )->sizeWhenDone != 0 ) ) 162 163 gtr_idle_add( notifyInMainThread, user_data ); 163 164 } -
trunk/gtk/util.c
r10828 r10852 34 34 #include <libtransmission/transmission.h> /* TR_RATIO_NA, TR_RATIO_INF */ 35 35 #include <libtransmission/utils.h> /* tr_inf */ 36 #include <libtransmission/web.h> /* tr_webResponseStr() */ 36 37 #include <libtransmission/version.h> /* tr_inf */ 37 38 … … 805 806 806 807 void 808 gtr_http_failure_dialog( GtkWidget * parent, const char * url, long response_code ) 809 { 810 GtkWindow * window = getWindow( parent ); 811 812 GtkWidget * w = gtk_message_dialog_new( window, 0, 813 GTK_MESSAGE_ERROR, 814 GTK_BUTTONS_CLOSE, 815 _( "Error opening \"%s\"" ), url ); 816 817 gtk_message_dialog_format_secondary_text( GTK_MESSAGE_DIALOG( w ), 818 _( "Server returned \"%1$ld %2$s\"" ), 819 response_code, 820 tr_webGetResponseStr( response_code ) ); 821 822 g_signal_connect_swapped( w, "response", G_CALLBACK( gtk_widget_destroy ), w ); 823 gtk_widget_show( w ); 824 } 825 826 void 807 827 gtr_unrecognized_url_dialog( GtkWidget * parent, const char * url ) 808 828 { -
trunk/gtk/util.h
r10822 r10852 157 157 void gtr_unrecognized_url_dialog( GtkWidget * parent, const char * url ); 158 158 159 void gtr_http_failure_dialog( GtkWidget * parent, const char * url, long response_code ); 159 160 160 161 void addTorrentErrorDialog( GtkWidget * window_or_child,
Note: See TracChangeset
for help on using the changeset viewer.