diff options
author | Claudio Takahasi <claudio.takahasi@openbossa.org> | 2007-08-27 21:54:25 +0000 |
---|---|---|
committer | Claudio Takahasi <claudio.takahasi@openbossa.org> | 2007-08-27 21:54:25 +0000 |
commit | b45b4cd6326d86970392cd8d465c5c8fa891b212 (patch) | |
tree | dc8ae26401a5e1d16f4c81716f5998bfffe65c48 /network/server.c | |
parent | 892a1edab753356dba7c0b5373e414ea71fcf6fa (diff) |
network: fixed Disable - record unregistration
Diffstat (limited to 'network/server.c')
-rw-r--r-- | network/server.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/network/server.c b/network/server.c index 5694bd53..3fc6900e 100644 --- a/network/server.c +++ b/network/server.c @@ -755,15 +755,20 @@ static int record_and_listen(struct network_server *ns) { int err; + if (bnep_io == NULL && (err = server_init(ns)) < 0) + return -err; + /* Add the service record */ ns->record_id = add_server_record(ns); if (!ns->record_id) { error("Unable to register the server(0x%x) service record", ns->id); + g_io_channel_close(bnep_io); + g_io_channel_unref(bnep_io); + bnep_io = NULL; return -EIO; } - if (bnep_io == NULL && (err = server_init(ns)) < 0) - return -err; + ns->enable = TRUE; return 0; } |