From db356bb20b5969c9680e9f11e21ad9bc51be30ec Mon Sep 17 00:00:00 2001 From: Aleksander Morgado Date: Sun, 18 Sep 2011 22:55:47 +0200 Subject: plugin-base: keep a MMPluginSupportsResult in the async result Instead of just a boolean, provide a MMPluginSupportsResult, so that we can pass it as is during `supports_port_finish()'. --- src/mm-plugin-base.c | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) (limited to 'src') diff --git a/src/mm-plugin-base.c b/src/mm-plugin-base.c index 32339ecb..b9eae160 100644 --- a/src/mm-plugin-base.c +++ b/src/mm-plugin-base.c @@ -486,9 +486,15 @@ port_probe_run_ready (MMPortProbe *probe, g_simple_async_result_take_error (ctx->result, error); } else { /* Probing succeeded */ - g_simple_async_result_set_op_res_gboolean ( - ctx->result, - !apply_post_probing_filters (ctx->plugin, probe)); + MMPluginSupportsResult supports_result; + + supports_result = (apply_post_probing_filters (ctx->plugin, + probe) ? + MM_PLUGIN_SUPPORTS_PORT_UNSUPPORTED : + MM_PLUGIN_SUPPORTS_PORT_SUPPORTED); + g_simple_async_result_set_op_res_gpointer (ctx->result, + GUINT_TO_POINTER (supports_result), + NULL); } /* Complete the async supports port request */ @@ -516,12 +522,7 @@ supports_port_finish (MMPlugin *self, return MM_PLUGIN_SUPPORTS_PORT_UNSUPPORTED; } - if (g_simple_async_result_get_op_res_gboolean (G_SIMPLE_ASYNC_RESULT (result))) { - *level = 10; /* dummy */ - return MM_PLUGIN_SUPPORTS_PORT_SUPPORTED; - } - - return MM_PLUGIN_SUPPORTS_PORT_UNSUPPORTED; + return (MMPluginSupportsResult) GPOINTER_TO_UINT (g_simple_async_result_get_op_res_gpointer (G_SIMPLE_ASYNC_RESULT (result))); } static void @@ -595,7 +596,9 @@ supports_port (MMPlugin *plugin, &need_vendor_probing, &need_product_probing)) { /* Filtered! */ - g_simple_async_result_set_op_res_gboolean (async_result, FALSE); + g_simple_async_result_set_op_res_gpointer (async_result, + GUINT_TO_POINTER (MM_PLUGIN_SUPPORTS_PORT_UNSUPPORTED), + NULL); g_simple_async_result_complete_in_idle (async_result); goto out; } -- cgit v1.2.3-70-g09d2