<div dir="ltr">sweet, I'm happy to see this go in. This will fix a currently existing possibility of getting stale signal quality when NO_NETWORK condition occurs.<div><br></div><div>Thanks,</div><div>Prathmesh</div></div>

<div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Oct 23, 2013 at 9:29 AM, Aleksander Morgado <span dir="ltr"><<a href="mailto:aleksander@lanedo.com" target="_blank">aleksander@lanedo.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">On 10/23/2013 06:26 PM, Dan Williams wrote:<br>
> Instead of using the NO_NETWORK error, which is only ever read<br>
> internally by ModemManager and not very useful when reading quality,<br>
> just report signal quality as zero.  Before MM 1.0, the signal quality<br>
> could be explicitly requested by clients, so the NO_NETWORK error was of<br>
> some use, but now that the quality is updated automatically by MM and is<br>
> a property instead of a D-Bus method call, the error is pointless.<br>
><br>
> ---<br>
<br>
</div>Makes total sense, yes. +1 from me.<br>
<div><div class="h5"><br>
<br>
> diff --git a/src/mm-broadband-modem.c b/src/mm-broadband-modem.c<br>
> index 32fa672..9d5a2b0 100644<br>
> --- a/src/mm-broadband-modem.c<br>
> +++ b/src/mm-broadband-modem.c<br>
> @@ -1739,27 +1739,24 @@ signal_quality_csq_ready (MMBroadbandModem *self,<br>
>      if (result_str) {<br>
>          /* Got valid reply */<br>
>          int quality;<br>
>          int ber;<br>
><br>
>          result_str = mm_strip_tag (result_str, "+CSQ:");<br>
>          if (sscanf (result_str, "%d, %d", &quality, &ber)) {<br>
> -            /* 99 means unknown */<br>
>              if (quality == 99) {<br>
> -                g_simple_async_result_take_error (<br>
> -                    ctx->result,<br>
> -                    mm_mobile_equipment_error_for_code (MM_MOBILE_EQUIPMENT_ERROR_NO_NETWORK));<br>
> +                /* 99 means unknown, no service, etc */<br>
> +                quality = 0;<br>
>              } else {<br>
>                  /* Normalize the quality */<br>
>                  quality = CLAMP (quality, 0, 31) * 100 / 31;<br>
> -                g_simple_async_result_set_op_res_gpointer (ctx->result,<br>
> -                                                           GUINT_TO_POINTER (quality),<br>
> -                                                           NULL);<br>
>              }<br>
> -<br>
> +            g_simple_async_result_set_op_res_gpointer (ctx->result,<br>
> +                                                       GUINT_TO_POINTER (quality),<br>
> +                                                       NULL);<br>
>              signal_quality_context_complete_and_free (ctx);<br>
>              return;<br>
>          }<br>
>      }<br>
><br>
>      g_simple_async_result_set_error (ctx->result,<br>
>                                       MM_CORE_ERROR,<br>
><br>
</div></div>> _______________________________________________<br>
> ModemManager-devel mailing list<br>
> <a href="mailto:ModemManager-devel@lists.freedesktop.org">ModemManager-devel@lists.freedesktop.org</a><br>
> <a href="http://lists.freedesktop.org/mailman/listinfo/modemmanager-devel" target="_blank">http://lists.freedesktop.org/mailman/listinfo/modemmanager-devel</a><br>
><br>
<span class="HOEnZb"><font color="#888888"><br>
<br>
--<br>
Aleksander<br>
</font></span></blockquote></div><br></div>