From b45b4cd6326d86970392cd8d465c5c8fa891b212 Mon Sep 17 00:00:00 2001 From: Claudio Takahasi Date: Mon, 27 Aug 2007 21:54:25 +0000 Subject: network: fixed Disable - record unregistration --- network/server.c | 9 +++++++-- 1 file 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; } -- cgit