From 4bb732c455a0efcab1ab6896cf43779c1f19e9be Mon Sep 17 00:00:00 2001 From: Charles Kerr Date: Mon, 27 Oct 2008 20:12:53 +0000 Subject: [PATCH] (gtk) minor hack: when adding a duplicate torrent, don't pop up a warning dialog iff the duplicate was in the watch directory. otherwise if users don't clean out their watch directory we'd be nagging them every time they restart Transmission. :/ --- gtk/tr-core.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/gtk/tr-core.c b/gtk/tr-core.c index 468d9abe8..7edb2f1f5 100644 --- a/gtk/tr-core.c +++ b/gtk/tr-core.c @@ -59,6 +59,7 @@ struct TrCorePrivate GSList * monitor_files; guint monitor_idle_tag; #endif + gboolean adding_from_watch_dir; gboolean inhibit_allowed; gboolean have_inhibit_cookie; gboolean dbus_error; @@ -473,7 +474,9 @@ watchFolderIdle( gpointer gcore ) { TrCore * core = TR_CORE( gcore ); + core->priv->adding_from_watch_dir = TRUE; tr_core_add_list_defaults( core, core->priv->monitor_files ); + core->priv->adding_from_watch_dir = FALSE; /* cleanup */ core->priv->monitor_files = NULL; @@ -867,7 +870,14 @@ add_filename( TrCore * core, } else if( ( err = tr_torrentParse( handle, ctor, NULL ) ) ) { - tr_core_errsig( core, err, filename ); + /* don't complain about .torrent files in the watch directory + that have already been added... that gets annoying, and we + don't want to nag about cleaning up the watch dir */ + const gboolean quiet = ( err == TR_EDUPLICATE ) + && ( core->priv->adding_from_watch_dir ); + if( !quiet ) + tr_core_errsig( core, err, filename ); + tr_ctorFree( ctor ); } else if( doPrompt )