Fix the return value of set_discard (issue #10519)
diff --git a/Objects/setobject.c b/Objects/setobject.c
index 9fea0c9..81a139f 100644
--- a/Objects/setobject.c
+++ b/Objects/setobject.c
@@ -1936,9 +1936,10 @@
         tmpkey = make_new_set(&PyFrozenSet_Type, key);
         if (tmpkey == NULL)
             return NULL;
-        result = set_discard_key(so, tmpkey);
+        rv = set_discard_key(so, tmpkey);
         Py_DECREF(tmpkey);
-        return result;
+        if (rv == -1)
+            return NULL;
     }
     Py_RETURN_NONE;
 }