[vlc-commits] control/dbus: dbus_root: simplify PropertiesChangedSignal
Filip Roséen
git at videolan.org
Thu May 18 18:08:30 CEST 2017
vlc | branch: master | Filip Roséen <filip at atch.se> | Thu May 18 12:02:07 2017 +0200| [adc31fd144d6e80aa07634c67d3a44cdefcf8e69] | committer: Rémi Denis-Courmont
control/dbus: dbus_root: simplify PropertiesChangedSignal
There is no need to query all keys when we are only interested in the
presence of a single one; these changes simplify the implementation to
properly reflect the intent.
Signed-off-by: Rémi Denis-Courmont <remi at remlab.net>
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=adc31fd144d6e80aa07634c67d3a44cdefcf8e69
---
modules/control/dbus/dbus_root.c | 22 +++-------------------
1 file changed, 3 insertions(+), 19 deletions(-)
diff --git a/modules/control/dbus/dbus_root.c b/modules/control/dbus/dbus_root.c
index 8b0ed71145..c332883730 100644
--- a/modules/control/dbus/dbus_root.c
+++ b/modules/control/dbus/dbus_root.c
@@ -453,8 +453,6 @@ PropertiesChangedSignal( intf_thread_t *p_intf,
DBusConnection *p_conn = p_intf->p_sys->p_conn;
DBusMessageIter changed_properties, invalidated_properties;
const char *psz_interface_name = DBUS_MPRIS_ROOT_INTERFACE;
- char **ppsz_properties = NULL;
- int i_properties = 0;
SIGNAL_INIT( DBUS_INTERFACE_PROPERTIES,
DBUS_MPRIS_OBJECT_PATH,
@@ -467,23 +465,9 @@ PropertiesChangedSignal( intf_thread_t *p_intf,
&changed_properties ) )
return DBUS_HANDLER_RESULT_NEED_MEMORY;
- i_properties = vlc_dictionary_keys_count( p_changed_properties );
- ppsz_properties = vlc_dictionary_all_keys( p_changed_properties );
-
- if( unlikely(!ppsz_properties) )
- {
- dbus_message_iter_abandon_container( &args, &changed_properties );
- return DBUS_HANDLER_RESULT_NEED_MEMORY;
- }
-
- for( int i = 0; i < i_properties; i++ )
- {
- if( !strcmp( ppsz_properties[i], "Fullscreen" ) )
- AddProperty( p_intf, &changed_properties, "Fullscreen", "b",
- MarshalFullscreen );
- free( ppsz_properties[i] );
- }
- free( ppsz_properties );
+ if( vlc_dictionary_has_key( p_changed_properties, "Fullscreen" ) )
+ AddProperty( p_intf, &changed_properties, "Fullscreen", "b",
+ MarshalFullscreen );
if( !dbus_message_iter_close_container( &args, &changed_properties ) )
return DBUS_HANDLER_RESULT_NEED_MEMORY;
More information about the vlc-commits
mailing list