From 732e2afb42ee63dd35bd971604b1c4c9048d6dd1 Mon Sep 17 00:00:00 2001
From: Jennifer Taylor <dragonminded@dragonminded.com>
Date: Mon, 31 May 2021 18:09:08 +0000
Subject: [PATCH] Fix possible logic error in saving favorites for IIDX.

---
 bemani/backend/iidx/copula.py  | 19 ++++++++++---------
 bemani/backend/iidx/sinobuz.py | 19 ++++++++++---------
 2 files changed, 20 insertions(+), 18 deletions(-)

diff --git a/bemani/backend/iidx/copula.py b/bemani/backend/iidx/copula.py
index a3fe306..5062dfe 100644
--- a/bemani/backend/iidx/copula.py
+++ b/bemani/backend/iidx/copula.py
@@ -1959,16 +1959,17 @@ class IIDXCopula(IIDXCourse, IIDXBase):
                     })
 
             # Filter out empty charts
-            singles = [single for single in singles if single['id'] != 0]
-            doubles = [double for double in doubles if double['id'] != 0]
+            if name is not None:
+                singles = [single for single in singles if single['id'] != 0]
+                doubles = [double for double in doubles if double['id'] != 0]
 
-            newprofile.replace_dict(
-                name,
-                {
-                    'single': singles,
-                    'double': doubles,
-                },
-            )
+                newprofile.replace_dict(
+                    name,
+                    {
+                        'single': singles,
+                        'double': doubles,
+                    },
+                )
 
         # Step-up mode
         step = request.child('step')
diff --git a/bemani/backend/iidx/sinobuz.py b/bemani/backend/iidx/sinobuz.py
index d9e86b2..e9e470c 100644
--- a/bemani/backend/iidx/sinobuz.py
+++ b/bemani/backend/iidx/sinobuz.py
@@ -1970,16 +1970,17 @@ class IIDXSinobuz(IIDXCourse, IIDXBase):
                     })
 
             # Filter out empty charts
-            singles = [single for single in singles if single['id'] != 0]
-            doubles = [double for double in doubles if double['id'] != 0]
+            if name is not None:
+                singles = [single for single in singles if single['id'] != 0]
+                doubles = [double for double in doubles if double['id'] != 0]
 
-            newprofile.replace_dict(
-                name,
-                {
-                    'single': singles,
-                    'double': doubles,
-                },
-            )
+                newprofile.replace_dict(
+                    name,
+                    {
+                        'single': singles,
+                        'double': doubles,
+                    },
+                )
 
         # Ninja rank saving
         for ninja_rank in request.children: