Linux bluetooth development
 help / color / mirror / Atom feed
* [PATCH] Unref pending call in fallback scenario.
@ 2010-10-14 15:13 Lukasz Rymanowski
  2010-10-14 20:34 ` Johan Hedberg
  0 siblings, 1 reply; 2+ messages in thread
From: Lukasz Rymanowski @ 2010-10-14 15:13 UTC (permalink / raw)
  To: linux-bluetooth; +Cc: Par-Gunnar.p.HJALMDAHL, Lukasz Rymanowski

Drop the reference to pending call in fallback scenario.
Otherwise, dbus will assert once timer expires.
---
 src/agent.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/src/agent.c b/src/agent.c
index c7fdbd4..b65a550 100644
--- a/src/agent.c
+++ b/src/agent.c
@@ -706,6 +706,7 @@ static int request_fallback(struct agent_request *req,
 		return -EINVAL;
 
 	dbus_pending_call_cancel(req->call);
+	dbus_pending_call_unref(req->call);
 
 	msg = dbus_message_copy(req->msg);
 
-- 
1.6.3.3


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] Unref pending call in fallback scenario.
  2010-10-14 15:13 [PATCH] Unref pending call in fallback scenario Lukasz Rymanowski
@ 2010-10-14 20:34 ` Johan Hedberg
  0 siblings, 0 replies; 2+ messages in thread
From: Johan Hedberg @ 2010-10-14 20:34 UTC (permalink / raw)
  To: Lukasz Rymanowski; +Cc: linux-bluetooth, Par-Gunnar.p.HJALMDAHL

Hi Lukasz,

On Thu, Oct 14, 2010, Lukasz Rymanowski wrote:
> Drop the reference to pending call in fallback scenario.
> Otherwise, dbus will assert once timer expires.
> ---
>  src/agent.c |    1 +
>  1 files changed, 1 insertions(+), 0 deletions(-)
> 
> diff --git a/src/agent.c b/src/agent.c
> index c7fdbd4..b65a550 100644
> --- a/src/agent.c
> +++ b/src/agent.c
> @@ -706,6 +706,7 @@ static int request_fallback(struct agent_request *req,
>  		return -EINVAL;
>  
>  	dbus_pending_call_cancel(req->call);
> +	dbus_pending_call_unref(req->call);
>  
>  	msg = dbus_message_copy(req->msg);
>  

Good catch. The patch has been pushed upstream. Over the last few years
I've bumped into this libdbus issue several times but it seems this
particular code path (request_fallback) gets triggered seldom enough for
it to not have surfaced earlier. I also vaguely remember that this got
fixed in newer D-Bus versions so those might not assert in this case
anymore.

Johan

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2010-10-14 20:34 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-10-14 15:13 [PATCH] Unref pending call in fallback scenario Lukasz Rymanowski
2010-10-14 20:34 ` Johan Hedberg

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox