[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PULL 07/12] qapi: Simplify error cleanup in test-qmp-*
From: |
Markus Armbruster |
Subject: |
Re: [Qemu-devel] [PULL 07/12] qapi: Simplify error cleanup in test-qmp-* |
Date: |
Tue, 10 Nov 2015 08:36:34 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) |
Eric Blake <address@hidden> writes:
> On 11/09/2015 10:46 AM, Markus Armbruster wrote:
>> From: Eric Blake <address@hidden>
>>
>> We have several tests that perform multiple sub-actions that are
>> expected to fail. Asserting that an error occurred, then clearing
>> it up to prepare for the next action, turned into enough
>> boilerplate that it was sometimes forgotten (for example, a number
>> of tests added to test-qmp-input-visitor.c in d88f5fd leaked err).
>> Worse, if an error is not reset to NULL, we risk invalidating
>> later use of that error (passing a non-NULL err into a function
>> is generally a bad idea). Encapsulate the boilerplate into a
>> single helper function error_free_or_abort(), and consistently
>> use it.
>>
>> The new function is added into error.c for use everywhere,
>> although it is anticipated that testsuites will be the main
>> client.
>>
>> Signed-off-by: Eric Blake <address@hidden>
>> Signed-off-by: Markus Armbruster <address@hidden>
>> ---
>
>> +++ b/include/qapi/error.h
>> @@ -30,6 +30,10 @@
>> * Handle an error without reporting it (just for completeness):
>> * error_free(err);
>> *
>> + * Assert than an expected error occurred, but clean it up without
>> + * reporting it (primarily useful in testsuites):
>
> s/than/that/ (if the pull hasn't already gone through; otherwise it's a
> trivial followup)
Fixed in PULL v2, thanks!
- [Qemu-devel] [PULL 04/12] qapi: Share test_init code in test-qmp-input*, (continued)
- [Qemu-devel] [PULL 04/12] qapi: Share test_init code in test-qmp-input*, Markus Armbruster, 2015/11/09
- [Qemu-devel] [PULL 01/12] qapi: Use generated TestStruct machinery in tests, Markus Armbruster, 2015/11/09
- [Qemu-devel] [PULL 11/12] qapi: Provide nicer array names in introspection, Markus Armbruster, 2015/11/09
- [Qemu-devel] [PULL 03/12] qobject: Protect against use-after-free in qobject_decref(), Markus Armbruster, 2015/11/09
- [Qemu-devel] [PULL 10/12] qapi: More tests of input arrays, Markus Armbruster, 2015/11/09
- [Qemu-devel] [PULL 05/12] qapi: Plug leaks in test-qmp-*, Markus Armbruster, 2015/11/09
- [Qemu-devel] [PULL 08/12] qapi: More tests of alternate output, Markus Armbruster, 2015/11/09
- [Qemu-devel] [PULL 12/12] qapi-introspect: Document lack of sorting, Markus Armbruster, 2015/11/09
- [Qemu-devel] [PULL 07/12] qapi: Simplify error cleanup in test-qmp-*, Markus Armbruster, 2015/11/09
- [Qemu-devel] [PULL 06/12] qapi: Simplify non-error testing in test-qmp-*, Markus Armbruster, 2015/11/09