aboutsummaryrefslogtreecommitdiff
path: root/src/mm-modem-gsm-network.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mm-modem-gsm-network.c')
-rw-r--r--src/mm-modem-gsm-network.c42
1 files changed, 16 insertions, 26 deletions
diff --git a/src/mm-modem-gsm-network.c b/src/mm-modem-gsm-network.c
index d7f52b7f..c49aff4b 100644
--- a/src/mm-modem-gsm-network.c
+++ b/src/mm-modem-gsm-network.c
@@ -74,8 +74,8 @@ async_call_not_supported (MMModemGsmNetwork *self,
MMCallbackInfo *info;
info = mm_callback_info_new (MM_MODEM (self), callback, user_data);
- info->error = g_error_new (MM_MODEM_ERROR, MM_MODEM_ERROR_OPERATION_NOT_SUPPORTED,
- "%s", "Operation not supported");
+ info->error = g_error_new_literal (MM_MODEM_ERROR, MM_MODEM_ERROR_OPERATION_NOT_SUPPORTED,
+ "Operation not supported");
mm_callback_info_schedule (info);
}
@@ -98,8 +98,8 @@ uint_call_not_supported (MMModemGsmNetwork *self,
MMCallbackInfo *info;
info = mm_callback_info_uint_new (MM_MODEM (self), callback, user_data);
- info->error = g_error_new (MM_MODEM_ERROR, MM_MODEM_ERROR_OPERATION_NOT_SUPPORTED,
- "%s", "Operation not supported");
+ info->error = g_error_new_literal (MM_MODEM_ERROR, MM_MODEM_ERROR_OPERATION_NOT_SUPPORTED,
+ "Operation not supported");
mm_callback_info_schedule (info);
}
@@ -123,13 +123,11 @@ reg_info_call_done (MMModemGsmNetwork *self,
}
static void
-reg_info_not_supported_wrapper (MMModem *modem, GError *error, gpointer user_data)
+reg_info_invoke (MMCallbackInfo *info)
{
- MMCallbackInfo *info = (MMCallbackInfo *) user_data;
- MMModemGsmNetworkRegInfoFn callback;
+ MMModemGsmNetworkRegInfoFn callback = (MMModemGsmNetworkRegInfoFn) info->callback;
- callback = (MMModemGsmNetworkRegInfoFn) mm_callback_info_get_data (info, "reg-info-callback");
- callback (MM_MODEM_GSM_NETWORK (modem), 0, NULL, NULL, error, mm_callback_info_get_data (info, "reg-info-data"));
+ callback (MM_MODEM_GSM_NETWORK (info->modem), 0, NULL, NULL, info->error, info->user_data);
}
static void
@@ -139,12 +137,9 @@ reg_info_call_not_supported (MMModemGsmNetwork *self,
{
MMCallbackInfo *info;
- info = mm_callback_info_new (MM_MODEM (self), reg_info_not_supported_wrapper, NULL);
- info->user_data = info;
- mm_callback_info_set_data (info, "reg-info-callback", callback, NULL);
- mm_callback_info_set_data (info, "reg-info-data", user_data, NULL);
- info->error = g_error_new (MM_MODEM_ERROR, MM_MODEM_ERROR_OPERATION_NOT_SUPPORTED,
- "%s", "Operation not supported");
+ info = mm_callback_info_new_full (MM_MODEM (self), reg_info_invoke, G_CALLBACK (callback), user_data);
+ info->error = g_error_new_literal (MM_MODEM_ERROR, MM_MODEM_ERROR_OPERATION_NOT_SUPPORTED,
+ "Operation not supported");
mm_callback_info_schedule (info);
}
@@ -164,13 +159,11 @@ scan_call_done (MMModemGsmNetwork *self,
}
static void
-scan_not_supported_wrapper (MMModem *modem, GError *error, gpointer user_data)
+gsm_network_scan_invoke (MMCallbackInfo *info)
{
- MMCallbackInfo *info = (MMCallbackInfo *) user_data;
- MMModemGsmNetworkScanFn callback;
+ MMModemGsmNetworkScanFn callback = (MMModemGsmNetworkScanFn) info->callback;
- callback = (MMModemGsmNetworkScanFn) mm_callback_info_get_data (info, "scan-callback");
- callback (MM_MODEM_GSM_NETWORK (modem), NULL, error, mm_callback_info_get_data (info, "scan-data"));
+ callback (MM_MODEM_GSM_NETWORK (info->modem), NULL, info->error, info->user_data);
}
static void
@@ -180,12 +173,9 @@ scan_call_not_supported (MMModemGsmNetwork *self,
{
MMCallbackInfo *info;
- info = mm_callback_info_new (MM_MODEM (self), scan_not_supported_wrapper, NULL);
- info->user_data = info;
- mm_callback_info_set_data (info, "scan-callback", callback, NULL);
- mm_callback_info_set_data (info, "scan-data", user_data, NULL);
- info->error = g_error_new (MM_MODEM_ERROR, MM_MODEM_ERROR_OPERATION_NOT_SUPPORTED,
- "%s", "Operation not supported");
+ info = mm_callback_info_new_full (MM_MODEM (self), gsm_network_scan_invoke, G_CALLBACK (callback), user_data);
+ info->error = g_error_new_literal (MM_MODEM_ERROR, MM_MODEM_ERROR_OPERATION_NOT_SUPPORTED,
+ "Operation not supported");
mm_callback_info_schedule (info);
}