From b7601f282de8aa5ce7f903160dbd846210ca709c Mon Sep 17 00:00:00 2001 From: RemixDev Date: Wed, 6 May 2020 12:06:56 +0200 Subject: [PATCH] Fixed out of memory issue when downloading large playlists --- deemix/app/queuemanager.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/deemix/app/queuemanager.py b/deemix/app/queuemanager.py index fa3b95e..693dffa 100644 --- a/deemix/app/queuemanager.py +++ b/deemix/app/queuemanager.py @@ -26,6 +26,13 @@ if its an album/playlist collection """ +def slimQueueItem(item): + light = item.copy() + if 'single' in light: + del light['single'] + if 'collection' in light: + del light['collection'] + return light def generateQueueItem(dz, sp, url, settings, bitrate=None, albumAPI=None, interface=None): forcedBitrate = getBitrateInt(bitrate) @@ -232,7 +239,7 @@ def addToQueue(dz, sp, url, settings, bitrate=None, interface=None): print("Already in queue!") continue if interface: - interface.send("addedToQueue", x) + interface.send("addedToQueue", slimQueueItem(x)) queue.append(x['uuid']) queueList[x['uuid']] = x else: @@ -247,7 +254,7 @@ def addToQueue(dz, sp, url, settings, bitrate=None, interface=None): {'msg': f"{queueItem['title']} is already in queue!", 'icon': 'playlist_add_check'}) return False if interface: - interface.send("addedToQueue", queueItem) + interface.send("addedToQueue", slimQueueItem(queueItem)) interface.send("toast", {'msg': f"{queueItem['title']} added to queue", 'icon': 'playlist_add'}) queue.append(queueItem['uuid']) queueList[queueItem['uuid']] = queueItem