If remote unsubscribe, disconnects or the daemon closes the socket the
io shall be destroyed properly otherwise it will prevent new
subscriptions.
Change-Id: I9cd77b61e7bfdd38ecd160edd0b9316d8285c7b0
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
struct chrc *chrc = user_data;
if (chrc) {
- bt_shell_printf("Attribute %s Write pipe closed\n", chrc->path);
- if (chrc->write_io) {
+ bt_shell_printf("Attribute %s %s pipe closed\n", chrc->path,
+ io == chrc->write_io ? "Write" : "Notify");
+
+ if (io == chrc->write_io) {
io_destroy(chrc->write_io);
chrc->write_io = NULL;
+ } else {
+ io_destroy(chrc->notify_io);
+ chrc->notify_io = NULL;
}
+
return false;
}