From 4a828d749a9089d124d97cb05d75f7742eef284f Mon Sep 17 00:00:00 2001
From: Diana Huang <dkh@edx.org>
Date: Tue, 10 Dec 2019 13:21:03 -0500
Subject: [PATCH] Remove items from a different dictionary than the one we're
 iterating over.

---
 lms/djangoapps/course_api/blocks/serializers.py | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/lms/djangoapps/course_api/blocks/serializers.py b/lms/djangoapps/course_api/blocks/serializers.py
index 9a40f648178..dd39d578323 100644
--- a/lms/djangoapps/course_api/blocks/serializers.py
+++ b/lms/djangoapps/course_api/blocks/serializers.py
@@ -104,9 +104,11 @@ class BlockSerializer(serializers.Serializer):  # pylint: disable=abstract-metho
         if authorization_denial_reason and authorization_denial_message:
             data['authorization_denial_reason'] = authorization_denial_reason
             data['authorization_denial_message'] = authorization_denial_message
+            cleaned_data = data.copy()
             for field in data.keys():  # pylint: disable=consider-iterating-dictionary
                 if field not in FIELDS_ALLOWED_IN_AUTH_DENIED_CONTENT:
-                    del data[field]
+                    del cleaned_data[field]
+            data = cleaned_data
 
         return data
 
-- 
GitLab