iface-modem-time: only retry if MM_CORE_ERROR_RETRY was returned
We don't want to retry if the error is fatal in some other kind, e.g. a reply parsing error or something.
This commit is contained in:
@@ -137,8 +137,11 @@ load_network_timezone_ready (MMIfaceModemTime *self,
|
|||||||
/* Retry? */
|
/* Retry? */
|
||||||
ctx->network_timezone_poll_retries--;
|
ctx->network_timezone_poll_retries--;
|
||||||
|
|
||||||
/* Fatal if no more retries */
|
/* Fatal if no more retries, or if specific error is not RETRY */
|
||||||
if (ctx->network_timezone_poll_retries == 0) {
|
if (ctx->network_timezone_poll_retries == 0 ||
|
||||||
|
!g_error_matches (error,
|
||||||
|
MM_CORE_ERROR,
|
||||||
|
MM_CORE_ERROR_RETRY)) {
|
||||||
g_simple_async_result_take_error (ctx->result, error);
|
g_simple_async_result_take_error (ctx->result, error);
|
||||||
update_network_timezone_context_complete_and_free (ctx);
|
update_network_timezone_context_complete_and_free (ctx);
|
||||||
return;
|
return;
|
||||||
|
@@ -39,7 +39,9 @@ struct _MMIfaceModemTime {
|
|||||||
GAsyncResult *res,
|
GAsyncResult *res,
|
||||||
GError **error);
|
GError **error);
|
||||||
|
|
||||||
/* Loading of the network timezone property */
|
/* Loading of the network timezone property. This method may return
|
||||||
|
* MM_CORE_ERROR_RETRY if the timezone cannot yet be loaded, so that
|
||||||
|
* the interface retries later. */
|
||||||
void (* load_network_timezone) (MMIfaceModemTime *self,
|
void (* load_network_timezone) (MMIfaceModemTime *self,
|
||||||
GAsyncReadyCallback callback,
|
GAsyncReadyCallback callback,
|
||||||
gpointer user_data);
|
gpointer user_data);
|
||||||
|
Reference in New Issue
Block a user