When dbus signal comes in, and the notification was from another program...
n = notifications_registry[nid] fails with a KeyError, so this should be wrapped in a try block.
The callbacks will still throw errors.
Cool. I've been using and studying free software for a couple years now, but this is my first time to give back a little. I know it's a tiny change, but it still felt good that it was accepted. :) I'm making a program called theme-daemon right now that will be at a beta stage soon. That is what I'm using pynotify for FYI, I hope you'll try it when it's ready.