From 464f33f77f66738c17c14390d7605167f52f62e5 Mon Sep 17 00:00:00 2001 From: Aleksander Morgado Date: Wed, 3 Apr 2013 12:29:14 +0200 Subject: [PATCH] sierra: early detect non-AT ports Detect the parser filter errors during our custom_init(), and set the port as not being AT if the error found. --- plugins/sierra/mm-plugin-sierra.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/plugins/sierra/mm-plugin-sierra.c b/plugins/sierra/mm-plugin-sierra.c index 8712c088..3d4ab7a3 100644 --- a/plugins/sierra/mm-plugin-sierra.c +++ b/plugins/sierra/mm-plugin-sierra.c @@ -86,6 +86,12 @@ gcap_ready (MMAtSerialPort *port, g_error_matches (error, MM_SERIAL_ERROR, MM_SERIAL_ERROR_RESPONSE_TIMEOUT)) { mm_port_probe_set_result_at (ctx->probe, FALSE); } + /* If reported a hard parse error, this port is definitely not an AT + * port, skip trying. */ + else if (g_error_matches (error, MM_SERIAL_ERROR, MM_SERIAL_ERROR_PARSE_FAILED)) { + mm_port_probe_set_result_at (ctx->probe, FALSE); + ctx->retries = 0; + } /* Just retry... */ sierra_custom_init_step (ctx);