File nma-mm-api-change.patch of Package NetworkManager-gnome
Index: network-manager-applet-0.7.1/src/nma-gsm-modem.c
===================================================================
--- network-manager-applet-0.7.1.orig/src/nma-gsm-modem.c
+++ network-manager-applet-0.7.1/src/nma-gsm-modem.c
@@ -103,17 +103,25 @@ nma_gsm_modem_get_registration_info (NMA
char **operator_name)
{
NMAGsmModemPrivate *priv = NMA_GSM_MODEM_GET_PRIVATE (modem);
+ GValueArray *array = NULL;
GError *err = NULL;
guint32 status = MM_GSM_MODEM_REG_STATUS_UNKNOWN;
g_return_val_if_fail (NMA_IS_GSM_MODEM (modem), 0);
- if (!dbus_g_proxy_call (priv->proxy, "GetRegistrationInfo", &err,
- G_TYPE_INVALID,
- G_TYPE_UINT, &status,
- G_TYPE_STRING, operator_code,
- G_TYPE_STRING, operator_name,
- G_TYPE_INVALID)) {
+ if (dbus_g_proxy_call (priv->proxy, "GetRegistrationInfo", &err,
+ G_TYPE_INVALID,
+ dbus_g_type_get_struct ("GValueArray", G_TYPE_UINT,
+ G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INVALID), &array,
+ G_TYPE_INVALID)) {
+
+ g_assert (array->n_values == 3);
+ status = g_value_get_uint (g_value_array_get_nth (array, 0));
+ *operator_code = g_value_dup_string (g_value_array_get_nth (array, 1));
+ *operator_name = g_value_dup_string (g_value_array_get_nth (array, 2));
+
+ g_value_array_free (array);
+ } else {
g_warning ("Error in getting network mode: %s", err->message);
g_error_free (err);
}
Index: network-manager-applet-0.7.1/src/modems/main.c
===================================================================
--- network-manager-applet-0.7.1.orig/src/modems/main.c
+++ network-manager-applet-0.7.1/src/modems/main.c
@@ -71,26 +71,26 @@ static void
get_card_info_done (DBusGProxy *proxy, DBusGProxyCall *call_id, gpointer user_data)
{
GladeXML *glade_xml = GLADE_XML (user_data);
- char *manufacturer = NULL;
- char *model = NULL;
- char *version = NULL;
+ GValueArray *array = NULL;
GError *error = NULL;
if (!dbus_g_proxy_end_call (proxy, call_id, &error,
- G_TYPE_STRING, &manufacturer,
- G_TYPE_STRING, &model,
- G_TYPE_STRING, &version,
+ dbus_g_type_get_struct ("GValueArray", G_TYPE_STRING,
+ G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INVALID), &array,
G_TYPE_INVALID)) {
g_warning ("Couldn't get modem information: %s", error->message);
g_error_free (error);
} else {
- gtk_label_set_text (GTK_LABEL (glade_xml_get_widget (glade_xml, "vendor_label")), manufacturer);
- gtk_label_set_text (GTK_LABEL (glade_xml_get_widget (glade_xml, "model_label")), model);
- gtk_label_set_text (GTK_LABEL (glade_xml_get_widget (glade_xml, "version_label")), version);
+ g_assert (array->n_values == 3);
- g_free (manufacturer);
- g_free (model);
- g_free (version);
+ gtk_label_set_text (GTK_LABEL (glade_xml_get_widget (glade_xml, "vendor_label")),
+ g_value_get_string (g_value_array_get_nth (array, 0)));
+ gtk_label_set_text (GTK_LABEL (glade_xml_get_widget (glade_xml, "model_label")),
+ g_value_get_string (g_value_array_get_nth (array, 1)));
+ gtk_label_set_text (GTK_LABEL (glade_xml_get_widget (glade_xml, "version_label")),
+ g_value_get_string (g_value_array_get_nth (array, 2)));
+
+ g_value_array_free (array);
}
}