[libmanette] mapping-manager: Fix checking mapping file deletion



commit 24b56f1d9b9b58d3ef4db2bbb988de44bb2b4dec
Author: vanadiae <vanadiae35 gmail com>
Date:   Wed Oct 14 20:36:54 2020 +0200

    mapping-manager: Fix checking mapping file deletion
    
    This uses the file change event type to check for file deletion, rather
    than using g_file_query_exists(). This prevents some race conditions, as
    explained by the documentation of g_file_query_exists().

 src/manette-mapping-manager.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
---
diff --git a/src/manette-mapping-manager.c b/src/manette-mapping-manager.c
index 4246232..4e9afaa 100644
--- a/src/manette-mapping-manager.c
+++ b/src/manette-mapping-manager.c
@@ -198,7 +198,7 @@ user_mappings_changed_cb (GFileMonitor          *monitor,
 
   g_hash_table_remove_all (self->user_mappings);
 
-  if (!g_file_query_exists (file, NULL)) {
+  if (G_UNLIKELY (event_type == G_FILE_MONITOR_EVENT_DELETED)) {
     g_signal_emit (self, signals[SIG_CHANGED], 0);
 
     return;


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