diff options
author | tick <tick@99fdad57-331a-0410-800a-d7fa5415bdb3> | 2007-11-20 04:17:35 +0000 |
---|---|---|
committer | tick <tick@99fdad57-331a-0410-800a-d7fa5415bdb3> | 2007-11-20 04:17:35 +0000 |
commit | 6ad8e1931d2df52ff173e4b83a5c3c0e1812b931 (patch) | |
tree | 48dc9cbaf6e424eb8ee818873623498b20fc8a53 /src/gsmd/usock.c | |
parent | 5e9fde8743d4d3d733303bef99e20000c0769148 (diff) |
[gsmd] Adding atcmd_terminate_matching (remove from the queues any command whose .ctx matches given)(Andrzej Zaborowski)
git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@3447 99fdad57-331a-0410-800a-d7fa5415bdb3
Diffstat (limited to 'src/gsmd/usock.c')
-rw-r--r-- | src/gsmd/usock.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/gsmd/usock.c b/src/gsmd/usock.c index 6b29125..3dc74d3 100644 --- a/src/gsmd/usock.c +++ b/src/gsmd/usock.c @@ -1205,9 +1205,11 @@ static int gsmd_usock_user_cb(int fd, unsigned int what, void *data) /* EOF, this client has just vanished */ gsmd_unregister_fd(&gu->gfd); close(fd); + /* finish pending atcmd's from this client thus + * destroying references to the user structure. */ + atcmd_terminate_matching(gu->gsmd, gu); /* destroy whole user structure */ llist_del(&gu->list); - /* FIXME: delete busy ucmds from finished_ucmds */ talloc_free(gu); return 0; } else if (rcvlen < 0) |