summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexandre Rostovtsev <tetromino@gentoo.org>2013-02-12 04:59:21 +0000
committerAlexandre Rostovtsev <tetromino@gentoo.org>2013-02-12 04:59:21 +0000
commitfa2dfb13aaa5804d584962985665b87212a63802 (patch)
tree5d162c137dfef2b825238d57f6c313e7f87870f9 /net-misc/modemmanager/files
parentVersion bump. (diff)
downloadgentoo-2-fa2dfb13aaa5804d584962985665b87212a63802.tar.gz
gentoo-2-fa2dfb13aaa5804d584962985665b87212a63802.tar.bz2
gentoo-2-fa2dfb13aaa5804d584962985665b87212a63802.zip
Add a patch to prevent multiple plugins from simultaneously controlling one modem port (bug #456782, thanks to Tony Vroon). Drop old.
(Portage version: 2.2.0_alpha161/cvs/Linux x86_64, signed Manifest commit with key CF0ADD61)
Diffstat (limited to 'net-misc/modemmanager/files')
-rw-r--r--net-misc/modemmanager/files/modemmanager-0.5-glib-2.31.patch104
-rw-r--r--net-misc/modemmanager/files/modemmanager-0.6.0.0-multi-plugin-probing.patch37
2 files changed, 37 insertions, 104 deletions
diff --git a/net-misc/modemmanager/files/modemmanager-0.5-glib-2.31.patch b/net-misc/modemmanager/files/modemmanager-0.5-glib-2.31.patch
deleted file mode 100644
index a8aa19184756..000000000000
--- a/net-misc/modemmanager/files/modemmanager-0.5-glib-2.31.patch
+++ /dev/null
@@ -1,104 +0,0 @@
-From 6406f9eb7042f63a38343412864b6a129be7fe75 Mon Sep 17 00:00:00 2001
-From: Aleksander Morgado <aleksander@lanedo.com>
-Date: Mon, 24 Oct 2011 21:09:11 +0200
-Subject: [PATCH] core: don't include private headers from glib
-
-The "glib/gtypes.h" is now considered private, and only "glib.h" should be
-included directly.
----
- src/mm-at-serial-port.h | 1 -
- src/mm-manager.h | 1 -
- src/mm-modem-base.h | 1 -
- src/mm-plugin-base.h | 1 -
- src/mm-port.h | 1 -
- src/mm-qcdm-serial-port.h | 1 -
- src/mm-serial-port.h | 1 -
- 7 files changed, 0 insertions(+), 7 deletions(-)
-
-diff --git a/src/mm-at-serial-port.h b/src/mm-at-serial-port.h
-index 5d5f13f..cec5dc3 100644
---- a/src/mm-at-serial-port.h
-+++ b/src/mm-at-serial-port.h
-@@ -18,7 +18,6 @@
- #define MM_AT_SERIAL_PORT_H
-
- #include <glib.h>
--#include <glib/gtypes.h>
- #include <glib-object.h>
-
- #include "mm-serial-port.h"
-diff --git a/src/mm-manager.h b/src/mm-manager.h
-index 1c98458..c6a64bd 100644
---- a/src/mm-manager.h
-+++ b/src/mm-manager.h
-@@ -17,7 +17,6 @@
- #ifndef MM_MANAGER_H
- #define MM_MANAGER_H
-
--#include <glib/gtypes.h>
- #include <glib-object.h>
- #include <dbus/dbus-glib.h>
- #include "mm-modem.h"
-diff --git a/src/mm-modem-base.h b/src/mm-modem-base.h
-index 0409957..d0cda3d 100644
---- a/src/mm-modem-base.h
-+++ b/src/mm-modem-base.h
-@@ -18,7 +18,6 @@
- #define MM_MODEM_BASE_H
-
- #include <glib.h>
--#include <glib/gtypes.h>
- #include <glib-object.h>
-
- #include "mm-port.h"
-diff --git a/src/mm-plugin-base.h b/src/mm-plugin-base.h
-index 799f681..e69ad17 100644
---- a/src/mm-plugin-base.h
-+++ b/src/mm-plugin-base.h
-@@ -17,7 +17,6 @@
- #define MM_PLUGIN_BASE_H
-
- #include <glib.h>
--#include <glib/gtypes.h>
- #include <glib-object.h>
-
- #define G_UDEV_API_IS_SUBJECT_TO_CHANGE
-diff --git a/src/mm-port.h b/src/mm-port.h
-index 4bcffd4..df935db 100644
---- a/src/mm-port.h
-+++ b/src/mm-port.h
-@@ -17,7 +17,6 @@
- #define MM_PORT_H
-
- #include <glib.h>
--#include <glib/gtypes.h>
- #include <glib-object.h>
-
- typedef enum {
-diff --git a/src/mm-qcdm-serial-port.h b/src/mm-qcdm-serial-port.h
-index 2786ee8..605016d 100644
---- a/src/mm-qcdm-serial-port.h
-+++ b/src/mm-qcdm-serial-port.h
-@@ -18,7 +18,6 @@
- #define MM_QCDM_SERIAL_PORT_H
-
- #include <glib.h>
--#include <glib/gtypes.h>
- #include <glib-object.h>
-
- #include "mm-serial-port.h"
-diff --git a/src/mm-serial-port.h b/src/mm-serial-port.h
-index ae38017..f988af3 100644
---- a/src/mm-serial-port.h
-+++ b/src/mm-serial-port.h
-@@ -18,7 +18,6 @@
- #define MM_SERIAL_PORT_H
-
- #include <glib.h>
--#include <glib/gtypes.h>
- #include <glib-object.h>
-
- #include "mm-port.h"
---
-1.7.8.6
-
diff --git a/net-misc/modemmanager/files/modemmanager-0.6.0.0-multi-plugin-probing.patch b/net-misc/modemmanager/files/modemmanager-0.6.0.0-multi-plugin-probing.patch
new file mode 100644
index 000000000000..43dd652c5313
--- /dev/null
+++ b/net-misc/modemmanager/files/modemmanager-0.6.0.0-multi-plugin-probing.patch
@@ -0,0 +1,37 @@
+From f6d9f53369200ba277a48de3a24c377799765559 Mon Sep 17 00:00:00 2001
+From: Dan Williams <dcbw@redhat.com>
+Date: Wed, 3 Oct 2012 18:35:07 -0500
+Subject: [PATCH] core: stop probing if a Modem has already been created for a
+ port (bgo #685398)
+
+If a port finishes probing from the first plugin, and then starts
+being probed by a second plugin, and then a different port finishes
+probing and creates a Modem object for that device, always let the
+Modem object's plugin grab the port and ignore any other plugin.
+Only one plugin may control modem ports.
+---
+ src/mm-manager.c | 8 ++++++++
+ 1 file changed, 8 insertions(+)
+
+diff --git a/src/mm-manager.c b/src/mm-manager.c
+index 728a115..e13d1f7 100644
+--- a/src/mm-manager.c
++++ b/src/mm-manager.c
+@@ -703,6 +703,14 @@ supports_callback (MMPlugin *plugin,
+ * supports it.
+ */
+ next_plugin = existing_plugin;
++ } else if (plugin != existing_plugin) {
++ /* A modem object may have been created by one of this device's other
++ * ports while this port was getting probed; now that we have a
++ * modem, just use the modem's plugin and ignore this plugin
++ * completely. All ports of a modem must be handled by the same
++ * plugin.
++ */
++ next_plugin = NULL;
+ } else {
+ mm_dbg ("(%s/%s): plugin %p (%s) existing %p (%s) info->best %p (%s)",
+ info->subsys, info->name,
+--
+1.8.1.2
+