static void desktop_directory_file_cancel_call_when_ready (NautilusFile *file, NautilusFileCallback callback, gpointer callback_data) { NautilusDesktopDirectoryFile *desktop_file; DesktopCallback search_key, *desktop_callback; desktop_file = NAUTILUS_DESKTOP_DIRECTORY_FILE (file); /* Find the entry in the table. */ search_key.callback = callback; search_key.callback_data = callback_data; desktop_callback = g_hash_table_lookup (desktop_file->details->callbacks, &search_key); if (desktop_callback == NULL) { return; } /* Remove from the hash table before working with it. */ g_hash_table_remove (desktop_callback->desktop_file->details->callbacks, desktop_callback); /* Tell the real directory to cancel the call. */ nautilus_directory_cancel_callback_internal (file->details->directory, file, NULL, ready_callback, desktop_callback); nautilus_file_cancel_call_when_ready (desktop_file->details->real_dir_file, ready_callback, desktop_callback); desktop_callback_destroy (desktop_callback); }
static void cancel_call_when_ready (gpointer key, gpointer value, gpointer user_data) { SearchCallback *search_callback; NautilusFile *file; file = key; search_callback = user_data; nautilus_file_cancel_call_when_ready (file, search_callback_file_ready_callback, search_callback); }