! Please note that this is a snapshot of our old Bugzilla server, which is read only since May 29, 2020. Please go to gitlab.xfce.org for our new server !
add "spec version" arg to GetServerInformation()
Status:
RESOLVED: FIXED
Product:
Xfce4-notifyd
Component:
general

Comments

Description Christoph Wickert editbugs 2009-07-22 23:27:58 CEST
Created attachment 2461 
Add spec_version to notify_get_server_information

Banshee crashes with Xfce4-notifyd when it wants to send a notification. notification-daemon and notify-osd work nicely. 

This bug was filed against my xfce4-notifyd package for Fedora at
https://bugzilla.redhat.com/show_bug.cgi?id=509081

and now tracked in Gnome Bugzilla
http://bugzilla.gnome.org/show_bug.cgi?id=587409

-------------
 Comment #6 from Bertrand Lorentz  (banshee developer, points: 17)
2009-07-01 11:26 UTC [reply]

The trace isn't that helpful. My findings come from a quick dig through the
various code bases.

The problem is triggered by the fact that banshee is now calling the
org.freedesktop.Notifications.GetServerInformation d-bus command, to identify
the notification server. We're doing that because notify-osd in Ubuntu doesn't
want its images scaled.

Here's what's in notify-sharp, from
http://trac.galago-project.org/browser/trunk/notify-sharp/src/Global.cs :
        public struct ServerInformation {
                public string Name;
                public string Vendor;
                public string Version;
                public string SpecVersion;
        }

In notification-daemon, from
http://trac.galago-project.org/browser/trunk/notification-daemon/src/daemon/daemon.c
:
boolean
notify_daemon_get_server_information(NotifyDaemon *daemon,
                                     char **out_name,
                                     char **out_vendor,
                                     char **out_version,
                                     char **out_spec_ver)


In xfce4-notifyd, from
http://git.xfce.org/kelnos/xfce4-notifyd/tree/xfce4-notifyd/xfce-notify-daemon.c
:
static gboolean notify_get_server_information(XfceNotifyDaemon *xndaemon,
                                              gchar **OUT_name,
                                              gchar **OUT_vendor,
                                              gchar **OUT_version,
                                              GError **error);

Strangely, the spec
(http://www.galago-project.org/specs/notification/0.9/x408.html#command-get-server-information)
only shows 3 fields : name, vendor and version.
My guess is that the code is ahead of the spec, or there's a newer spec that I
couldn't find.
------------

The patch I have written based on the others doesn't solve the problem, I'm attaching it nevertheless. Please take a look at it.
Comment 1 Brian J. Tarricone (not reading bugmail) 2009-07-22 23:40:28 CEST
Sorry, but that's not in the current spec.  See:
http://galago-project.org/specs/notification/0.9/x408.html#command-get-server-information

That Banshee crashes is certainly a Banshee bug (or a bug in whatever dbus/libnotify bindings it uses).
Comment 2 Brian J. Tarricone (not reading bugmail) 2009-07-22 23:42:11 CEST
Right, sorry, didn't read the entire post.

I'd rather not add things to xfce4-notifyd if they're not in the spec.  That the code in the reference implementation is ahead of the spec is not particularly relevant to me.
Comment 3 Christoph Wickert editbugs 2009-08-06 22:49:33 CEST
I fully understand your POV. Feel free to close this bug or leave it open for tracking purposes.
Comment 4 Brian J. Tarricone (not reading bugmail) 2009-10-29 06:08:13 CET
Ok, this is implemented.  Also a --enable-old-get-server-information-signature configure flag to get the old behavior.

Bug #5602

Reported by:
Christoph Wickert
Reported on: 2009-07-22
Last modified on: 2009-10-29

People

Assignee:
Brian J. Tarricone (not reading bugmail)
CC List:
0 users

Version

Attachments

Additional information