diff options
| author | Barry Warsaw | 2010-08-10 19:35:19 -0400 |
|---|---|---|
| committer | Barry Warsaw | 2010-08-10 19:35:19 -0400 |
| commit | de7f01e3836379e0902c2ac4b6b6691b955f2257 (patch) | |
| tree | 159d27fadfdf642d823a6477d95fbfa7dbe11fcf /src/mailman/rest/lists.py | |
| parent | 3426c60480b6cf3492c63e7cb5d115ae2d3d8930 (diff) | |
| download | mailman-de7f01e3836379e0902c2ac4b6b6691b955f2257.tar.gz mailman-de7f01e3836379e0902c2ac4b6b6691b955f2257.tar.zst mailman-de7f01e3836379e0902c2ac4b6b6691b955f2257.zip | |
Diffstat (limited to 'src/mailman/rest/lists.py')
| -rw-r--r-- | src/mailman/rest/lists.py | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/src/mailman/rest/lists.py b/src/mailman/rest/lists.py index 9ed3f877e..6e297d0ed 100644 --- a/src/mailman/rest/lists.py +++ b/src/mailman/rest/lists.py @@ -264,14 +264,20 @@ class ListConfiguration(resource.Resource): """Set all of a mailing list's configuration.""" # Use PATCH to change just one or a few of the attributes. validator = Validator(**VALIDATORS) - for key, value in validator(request).items(): - setattr(self._mlist, key, value) + try: + for key, value in validator(request).items(): + setattr(self._mlist, key, value) + except ValueError as error: + return http.bad_request([], str(error)) return http.ok([], '') @PATCH() def patch_configuration(self, request): """Set a subset of the mailing list's configuration.""" validator = Validator(_optional=VALIDATORS.keys(), **VALIDATORS) - for key, value in validator(request).items(): - setattr(self._mlist, key, value) + try: + for key, value in validator(request).items(): + setattr(self._mlist, key, value) + except ValueError as error: + return http.bad_request([], str(error)) return http.ok([], '') |
