diff options
Diffstat (limited to 'plugins/mm-plugin-generic.c')
-rw-r--r-- | plugins/mm-plugin-generic.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/plugins/mm-plugin-generic.c b/plugins/mm-plugin-generic.c index 89912c2b..54726202 100644 --- a/plugins/mm-plugin-generic.c +++ b/plugins/mm-plugin-generic.c @@ -80,15 +80,18 @@ supports_port (MMPluginBase *base, MMPluginBaseSupportsTask *task) { GUdevDevice *port; - guint32 cached = 0, level; /* Can't do anything with non-serial ports */ port = mm_plugin_base_supports_task_get_port (task); if (strcmp (g_udev_device_get_subsystem (port), "tty")) return MM_PLUGIN_SUPPORTS_PORT_UNSUPPORTED; - if (mm_plugin_base_get_cached_port_capabilities (base, port, &cached)) { - level = get_level_for_capabilities (cached); + /* Check if a previous probing was already launched in this port */ + if (mm_plugin_base_supports_task_propagate_cached (task)) { + guint32 level; + + /* A previous probing was already done, use its results */ + level = get_level_for_capabilities (mm_plugin_base_supports_task_get_probed_capabilities (task)); if (level) { mm_plugin_base_supports_task_complete (task, level); return MM_PLUGIN_SUPPORTS_PORT_IN_PROGRESS; |