diff options
author | Aleksander Morgado <aleksander@lanedo.com> | 2012-08-21 12:21:08 +0200 |
---|---|---|
committer | Aleksander Morgado <aleksander@lanedo.com> | 2012-08-23 19:10:59 +0200 |
commit | 36566e593423fbfe5e1d204ec8eba1619fb1ede6 (patch) | |
tree | 958fc76a717e09f661fb3f02ca6d75b3a3335ec3 | |
parent | 028a4cc6344240d79f416e791a66c0a8ef89094f (diff) |
iface-modem: max number of bearers equal to the number of available data ports
-rw-r--r-- | src/mm-iface-modem.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/mm-iface-modem.c b/src/mm-iface-modem.c index c8d1b96b..a8d69037 100644 --- a/src/mm-iface-modem.c +++ b/src/mm-iface-modem.c @@ -3256,9 +3256,15 @@ interface_initialization_step (InitializationContext *ctx) NULL); if (!list) { - list = mm_bearer_list_new (1, 1); + guint n; + + /* The maximum number of available/connected modems is guessed from + * the size of the data ports list. */ + n = g_list_length (mm_base_modem_peek_data_ports (MM_BASE_MODEM (ctx->self))); + mm_dbg ("Modem allows up to %u bearers", n); /* Create new default list */ + list = mm_bearer_list_new (n, n); g_object_set (ctx->self, MM_IFACE_MODEM_BEARER_LIST, list, NULL); |