From ca4143e3480755cadd1b46d8a30e9d357d970099 Mon Sep 17 00:00:00 2001 From: Choco <94597336+ChocoMeow@users.noreply.github.com> Date: Tue, 18 Jul 2023 20:01:36 +0800 Subject: [PATCH] Fixed fair queues and optimizations --- cogs/basic.py | 2 +- voicelink/queue.py | 13 ++++++------- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/cogs/basic.py b/cogs/basic.py index ccd6a68..4cdebd8 100644 --- a/cogs/basic.py +++ b/cogs/basic.py @@ -456,7 +456,7 @@ class Basic(commands.Cog): track_ids = bytes.split(b"\n")[-1] track_ids = track_ids.decode().split(",") - tracks = [voicelink.Track(track_id=track_id, info=voicelink.decode(track_id), requester=ctx.author) for track_id in track_ids] + tracks = (voicelink.Track(track_id=track_id, info=voicelink.decode(track_id), requester=ctx.author) for track_id in track_ids) if not tracks: return await ctx.send(player.get_msg('noTrackFound')) diff --git a/voicelink/queue.py b/voicelink/queue.py index 716fa86..c705577 100644 --- a/voicelink/queue.py +++ b/voicelink/queue.py @@ -143,14 +143,12 @@ class Queue: if index2 is None: index2 = index - if index2 < index: - temp = index - index = index2 - index2 = temp + elif index2 < index: + index, index2 = index2, index try: count = [] - for i, track in enumerate(self._queue[pos + index: pos + index2 + 1], start=0): + for i, track in enumerate(self._queue[pos + index: pos + index2 + 1]): if member: if track.requester != member: continue @@ -194,7 +192,7 @@ class FairQueue(Queue): super().__init__(size, duplicate_track, get_msg) self._set = set() - async def put(self, item: Track) -> int: + def put(self, item: Track) -> int: if len(self._queue) >= self._size: raise QueueFull(self.get_msg("voicelinkQueueFull").format(self._size)) @@ -214,5 +212,6 @@ class FairQueue(Queue): break lastIndex += 1 self._set.add(track.requester) - await self.put_at_index(lastIndex, item) + + self.put_at_index(lastIndex, item) return lastIndex