浏览代码

VLCMediaPlayer: fix equalizer state return value

Felix Paul Kühne 11 年之前
父节点
当前提交
57729071b8
共有 1 个文件被更改,包括 8 次插入1 次删除
  1. 8 1
      Sources/VLCMediaPlayer.m

+ 8 - 1
Sources/VLCMediaPlayer.m

@@ -160,6 +160,7 @@ static void HandleMediaPlayerMediaChanged(const libvlc_event_t * event, void * s
     id _drawable;                        //< The drawable associated to this media player
     VLCAudio *_audio;
     libvlc_equalizer_t *_equalizerInstance;
+    BOOL _equalizerEnabled;
 }
 @end
 
@@ -783,7 +784,8 @@ static void HandleMediaPlayerMediaChanged(const libvlc_event_t * event, void * s
 
 - (void)setEqualizerEnabled:(BOOL)equalizerEnabled
 {
-    if (!equalizerEnabled) {
+    _equalizerEnabled = equalizerEnabled;
+    if (!_equalizerEnabled) {
         libvlc_media_player_set_equalizer(_playerInstance, NULL);
 
         if (_equalizerInstance)
@@ -796,6 +798,11 @@ static void HandleMediaPlayerMediaChanged(const libvlc_event_t * event, void * s
     libvlc_media_player_set_equalizer(_playerInstance, _equalizerInstance);
 }
 
+- (BOOL)equalizerEnabled
+{
+    return _equalizerEnabled;
+}
+
 - (NSArray *)equalizerProfiles
 {
     unsigned count = libvlc_audio_equalizer_get_preset_count();