+static int remove_variable_callback( libvlc_instance_t *p_instance,
+ struct libvlc_callback_entry_t * p_entry )
+{
+ const char * callback_name = NULL;
+
+ /* Note: Appropriate lock should be held by the caller */
+
+ switch ( p_entry->i_event_type )
+ {
+ case VOLUME_CHANGED:
+ callback_name = "volume-change";
+ break;
+ case INPUT_POSITION_CHANGED:
+ break;
+ }
+
+ if (!callback_name)
+ return VLC_EGENERIC;
+
+ return var_DelCallback( p_instance->p_libvlc_int,
+ callback_name, handle_event,
+ p_entry );
+}
+