     public func playSong(index: Int, songsList: [AudioFile])
     {
         self.songsList = songsList
-        if let dataSource = self.dataSource {
-            if dataSource.audioWillShuffleInAudioPlayer(self) {
-                self.songsList?.shuffle()
-            }
+        if let dataSource = self.dataSource where dataSource.audioWillShuffleInAudioPlayer(self) {
+            self.songsList?.shuffle()
         }
         // Prepare core audio
         prepareAudio(index)

    private func prepareAudio(song: AudioFile, _ index: Int)
    {
        // Keep alive audio at background
        if song.path == nil {
            self.currentSong = nil
            return
        }

        if self.songsList == nil || self.songsList!.count == 0 {
            return false
        }
        return true
    }

    // MARK: Commands
