Closed stativ closed 9 years ago
Shared memory in GNU/Linux is based on special files in /tmp directory. How will your code work at startup in situation when xembedsniproxy was crashed or killed and a special file in /tmp exists?
Also the second point was:
Two: We should close if another systray is running
As far as I understand we should check if any other xembed systray manager works, but not only xembedsniproxy.
2) I am not sure if it is a real problem when two xembed systray managers are launched simultaneously, because all systray icons will appear only in one of them.
1) Probably some additional check might be added for resolving the issue with killed process.
What I don't like is that I should be quitting when I can't claim the _NET_SYSTEM_TRAY atom because any other tray is running.
Once I do that, I get this feature for free.
If I add this, I still need to add the previous code and I get two bits doing the same thing.
It used to work till I ported it to use KWindowSystem which seems to have a bug in it.
Ah, found what was wrong with the way I was quitting. That's now fixed.
Thanks for taking the time to submit the patch, it really is appreciated and I'm sorry I didn't merge it. At least we ended up with a fix.
This should fix the second part of #20 – I introduced a new QSingleApplication class that allows only one running instance.