classobject.c moduleobject.c stdwinmodule.c xxobject.c:
raise AttributeError, not KeyError, when attribute deletion fails.
sunaudiodevmodule.c: check for deletion before calling setmember.
diff --git a/Modules/sunaudiodev.c b/Modules/sunaudiodev.c
index 0cf5613..d02041a 100644
--- a/Modules/sunaudiodev.c
+++ b/Modules/sunaudiodev.c
@@ -343,6 +343,12 @@
char *name;
object *v;
{
+
+ if (v == NULL) {
+ err_setstr(TypeError,
+ "can't delete sun audio status attributes");
+ return NULL;
+ }
return setmember((char *)&xp->ai, sads_ml, name, v);
}