summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksander Morgado <aleksander@aleksander.es>2016-11-21 13:44:08 +0100
committerAleksander Morgado <aleksander@aleksander.es>2016-11-21 13:44:08 +0100
commit30c2790aa4a712e4cc834d43408d75803db47861 (patch)
tree6eb147abfffd1a6c76ed739ab1b8ebc42532f558
parent51e3d3d8372e615e9c9a62408638cd8a480f5a14 (diff)
downloadModemManager-30c2790aa4a712e4cc834d43408d75803db47861.tar.gz
kerneldevice,generic: load virtual devices without default rules
This is so that "make check" doesn't depend on having the rule files installed in the default udev rules directory, which currently would break the build: TEST: test-service-generic... (pid=2601) /MM/Service/Generic/enable-disable: Activating service name='org.freedesktop.ModemManager1' Successfully activated service 'org.freedesktop.ModemManager1' ** (/home/aleksander/Development/foss/ModemManager/plugins/.libs/lt-test-service-generic:2601): ERROR **: Error setting test profile: GDBus.Error:org.freedesktop.ModemManager1.Error.Core.Failed: Failed to find primary AT port FAIL GTester: last random seed: R02S3897abaae9df36f8d2eeb679406ab675 make[3]: *** [Makefile:3804: test-nonrecursive] Terminated
-rw-r--r--src/kerneldevice/mm-kernel-device-generic.c3
-rw-r--r--src/mm-plugin.c5
2 files changed, 6 insertions, 2 deletions
diff --git a/src/kerneldevice/mm-kernel-device-generic.c b/src/kerneldevice/mm-kernel-device-generic.c
index 3860e424f..0434bd1bb 100644
--- a/src/kerneldevice/mm-kernel-device-generic.c
+++ b/src/kerneldevice/mm-kernel-device-generic.c
@@ -894,7 +894,8 @@ mm_kernel_device_generic_new_with_rules (MMKernelEventProperties *properties,
GError **error)
{
g_return_val_if_fail (MM_IS_KERNEL_EVENT_PROPERTIES (properties), NULL);
- g_return_val_if_fail (rules != NULL, NULL);
+
+ /* Note: we allow NULL rules, e.g. for virtual devices */
return MM_KERNEL_DEVICE (g_initable_new (MM_TYPE_KERNEL_DEVICE_GENERIC,
NULL,
diff --git a/src/mm-plugin.c b/src/mm-plugin.c
index 8ebdbd17e..6fce88989 100644
--- a/src/mm-plugin.c
+++ b/src/mm-plugin.c
@@ -962,7 +962,10 @@ mm_plugin_create_modem (MMPlugin *self,
mm_kernel_event_properties_set_subsystem (properties, "virtual");
mm_kernel_event_properties_set_name (properties, virtual_ports[i]);
- kernel_device = mm_kernel_device_generic_new (properties, &inner_error);
+ /* Give an empty set of rules, because we don't want them to be
+ * loaded from the udev rules path (as there may not be any
+ * installed yet). */
+ kernel_device = mm_kernel_device_generic_new_with_rules (properties, NULL, &inner_error);
if (!kernel_device) {
mm_warn ("Could not grab port (virtual/%s): '%s'",
virtual_ports[i],