[evolution-data-server] ESourceRegistryServer: File monitor should set flags on new sources.



commit bb0e0e0cf976c31c10dc2496177a43d9395ada0f
Author: Matthew Barnes <mbarnes redhat com>
Date:   Sat Oct 13 15:29:11 2012 -0400

    ESourceRegistryServer: File monitor should set flags on new sources.
    
    ESourceRegistryServer forgot to set WRITABLE and REMOVABLE flags on
    new ESources created when a GFileMonitor detects a new .source file.
    Consequently the new ESource could neither be modified nor removed,
    which causes problems for unit tests that use predefined key files.

 libebackend/e-source-registry-server.c |    8 ++++++++
 1 files changed, 8 insertions(+), 0 deletions(-)
---
diff --git a/libebackend/e-source-registry-server.c b/libebackend/e-source-registry-server.c
index e549a91..91ecbf7 100644
--- a/libebackend/e-source-registry-server.c
+++ b/libebackend/e-source-registry-server.c
@@ -888,6 +888,14 @@ source_registry_server_monitor_changed_cb (GFileMonitor *monitor,
 			((source == NULL) && (error != NULL)));
 
 		if (error == NULL) {
+			/* File monitors are only placed on directories
+			 * where data sources are writable and removable,
+			 * so it should be safe to assume these flags. */
+			e_server_side_source_set_writable (
+				E_SERVER_SIDE_SOURCE (source), TRUE);
+			e_server_side_source_set_removable (
+				E_SERVER_SIDE_SOURCE (source), TRUE);
+
 			e_source_registry_server_add_source (server, source);
 			g_object_unref (source);
 		} else {



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]