D-BUS for Mozilla project progress #4
Sorry, I did not update my progress since one month.
Here is my current progress on that project :
- Signals are supported, you can send en receive signals
- Introspection XML data is now parsed by my component
- I’ve wrote an dbus-viewer clone in XUL
- I’ve integrated Threads
But I did not release a 0.1 version because my wrapper produce a dead lock :
If you listen for a signal and call a remote method, you program get locked.
This is a common usage of D-BUS and I think that I can’t release my work without it.
This problem is caused by libdbus witch is not threads “aware” and because I don’t have a shared
lock between my threads.
Havoc Pennington explained me howto solve this issue : integrate libdbus inside my mainloop as glib as done :
This integration is hard because D-BUS is using UNIX file handle and NSPR does not provide functions to handle it.
I did not expect so many technical difficulties, but I stay motivated.
I continue to work on my project (after the end of the summer of code) and I will release version 0.1 as soon as the dead lock issue is solved.