Circular dependency between Bus and Executor
Bug #1501864 reported by
Kyle Fazzari
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
dbus-cpp |
In Progress
|
High
|
Thomas Voß |
Bug Description
While testing dbus-cpp I noticed the refcount on my shared_ptr<Bus> was higher than expected when I was done with it (i.e. after I was done with it and stopped it the refcount was 2 instead of 1). After some quick investigation I noticed that the Executor holds a shared_ptr to its Bus, and Bus has a shared_ptr to its Executor, which means neither ever seems to be freed.
Related branches
lp:~thomas-voss/dbus-cpp/decouple-executor-and-bus
Ready for review
for merging
into
lp:dbus-cpp/15.04
- Ubuntu Phablet Team: Pending requested
-
Diff: 1554 lines (+848/-466)11 files modifiedCMakeLists.txt (+2/-0)
include/core/dbus/asio/make_executor.h (+5/-5)
include/core/dbus/executor.h (+86/-10)
src/core/dbus/CMakeLists.txt (+5/-1)
src/core/dbus/asio/asio.cpp (+172/-383)
src/core/dbus/asio/asio.h (+108/-0)
src/core/dbus/bus.cpp (+251/-2)
src/core/dbus/executor.cpp (+42/-0)
tests/CMakeLists.txt (+1/-0)
tests/executor_test.cpp (+145/-51)
tests/service_test.cpp (+31/-14)
Changed in dbus-cpp: | |
importance: | Undecided → High |
status: | New → In Progress |
assignee: | nobody → Thomas Voß (thomas-voss) |
To post a comment you must log in.