summaryrefslogtreecommitdiffstats
path: root/src/emulator.c
diff options
context:
space:
mode:
authorDenis Kenzior <denkenz@gmail.com>2011-05-25 04:54:41 -0500
committerDenis Kenzior <denkenz@gmail.com>2011-05-25 04:54:41 -0500
commit4f7027de6f2bfabab14532ced28ccf18e3c1518b (patch)
tree46bb5a388436fe1597b2455175a51546bfab3efa /src/emulator.c
parenta65cc631ea5f75e48d15e07fb460901ab39926df (diff)
downloadofono-4f7027de6f2bfabab14532ced28ccf18e3c1518b.tar.bz2
emulator: Reflow ato implementation logic
Diffstat (limited to 'src/emulator.c')
-rw-r--r--src/emulator.c15
1 files changed, 4 insertions, 11 deletions
diff --git a/src/emulator.c b/src/emulator.c
index 8d8f8524..f5f57428 100644
--- a/src/emulator.c
+++ b/src/emulator.c
@@ -277,11 +277,6 @@ static void dun_ato_cb(GAtServer *server, GAtServerRequestType type,
DBG("");
- if (em->ppp == NULL) {
- g_at_server_send_final(server, G_AT_SERVER_RESULT_NO_CARRIER);
- return;
- }
-
switch (type) {
case G_AT_SERVER_REQUEST_TYPE_SET:
g_at_result_iter_init(&iter, result);
@@ -293,11 +288,11 @@ static void dun_ato_cb(GAtServer *server, GAtServerRequestType type,
if (val != 0)
goto error;
- g_at_server_send_intermediate(em->server, "CONNECT");
- g_at_io_set_write_done(io, resume_ppp, em);
- break;
-
+ /* Fall through */
case G_AT_SERVER_REQUEST_TYPE_COMMAND_ONLY:
+ if (em->ppp == NULL)
+ goto error;
+
g_at_server_send_intermediate(em->server, "CONNECT");
g_at_io_set_write_done(io, resume_ppp, em);
break;
@@ -307,8 +302,6 @@ error:
g_at_server_send_final(server, G_AT_SERVER_RESULT_ERROR);
break;
}
-
- return;
}
static struct indicator *find_indicator(struct ofono_emulator *em,