[devel] "Символы" DBus (Was: [sisyphus] gnome свежий сизиф)
Aleksey Novodvorsky
a.e.nvdv at gmail.com
Tue Aug 18 19:53:00 MSD 2009
18.08.09, Mikhail Efremov<sem at altlinux.ru> написал(а):
> On Tue, 18 Aug 2009 13:34:29 +0400 Alexey Rusakov wrote:
> > В Втр, 18/08/2009 в 13:22 +0400, Alexey Rusakov пишет:
> > > В Втр, 18/08/2009 в 12:26 +0400, Anton Vinogradov пишет:
> > > > Две очень неприятные проблеммы:
> > > > 1. Вместо перзагрузки выкидывает в gdm
> > Предположительно проблемы с gnome-session.
> >
> > > > 2. Не дает сменить системное время через аплет часов,
> > > > вываливаясь с ошибкой "Method "ShowDialog" with signature "su" on
> > > > interface "org.gnome.PolicyKit.Manager" doesn't exist"
> > Разъехались интерфейс, предоставляемый PolicyKit-gnome, и интерфейс,
> > который от него ожидает gnome-panel и конкретно апплет часов...
>
>
> Это выстрелил мой патч к PolicyKit-gnome.
> Ситуация такая: PolicyKit-gnome пытается регистрировать один объект по
> двум путям, "/org/gnome/PolicyKit/Manager" и "/". В dbus-glib 0.82
> такое больше не позволяется:
> Also, warn and keep the first object path if the library user registers
> an object at two object paths (previously, this would fail silently, use
> the second object path, and leak memory).
> (commit 6de1441865da2816c6bcd8cae842be93a8a96304)
>
> Поэтому в PolicyKit-gnome была выкинута регистрация первого пути,
> оставлен только второй, т.к. после обновления libdbus-glib по первому не
> работал даже пример в самом PolicyKit-gnome. К тому же в коммите
> утверждается, что раньше все равно использовался только второй путь.
> На самом деле оно похоже все-таки как-то работало, со старым
> libdbus-glib у меня получается использовать оба пути.
> Получается, что одна часть софта использует первый путь, другая -
> второй. При этом я подозреваю, что первый путь является тяжелым
> наследием прошлого, как и сам ShowDialog:
> <!-- this interface is deprecated and will be removed in a future
> release --> <interface name="org.gnome.PolicyKit.Manager">
> <method name="ShowDialog">
>
> Надо либо приводить весь софт к одному знаменателю, т.е. использовать
> какой-то один путь, либо откатывать libdbus-glib.
Давайте это занесем в bugzilla для начала.
Rgrds, Алексей
More information about the Devel
mailing list