Summary: | Match rules with path_namespace='/' don't match anything | ||
---|---|---|---|
Product: | dbus | Reporter: | Philip Withnall <bugzilla> |
Component: | core | Assignee: | Simon McVittie <smcv> |
Status: | RESOLVED FIXED | QA Contact: | |
Severity: | major | ||
Priority: | medium | Keywords: | patch |
Version: | unspecified | ||
Hardware: | All | ||
OS: | All | ||
Whiteboard: | |||
i915 platform: | i915 features: | ||
Attachments: | [1.6, master] path_namespace='/' should match everything |
Description
Philip Withnall
2013-10-23 14:07:19 UTC
Downstream workaround in GIO: https://bugzilla.gnome.org/show_bug.cgi?id=710726 App-level workaround: compose and add your own match rule without the path_namespace. Nobody spotted this before because an ObjectManager at '/' is usually an undesirable thing to do: you'll get every signal emitted by the entire service. Created attachment 88037 [details] [review] [1.6, master] path_namespace='/' should match everything Comment on attachment 88037 [details] [review] [1.6, master] path_namespace='/' should match everything Review of attachment 88037 [details] [review]: ----------------------------------------------------------------- Iām not a D-Bus reviewer, but this looks good to me. Comment on attachment 88037 [details] [review] [1.6, master] path_namespace='/' should match everything Review of attachment 88037 [details] [review]: ----------------------------------------------------------------- ::: bus/signals.c @@ +1842,2 @@ > */ > + if (len > 1 && path[len] != '\0' && path[len] != '/') I'd have put the len > 1 case before the prefix match but this will obviously work and the docs are clear enough. Thanks, fixed in git for 1.6.18 and 1.7.8. |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.