mirror of
https://github.com/yuzu-emu/unicorn.git
synced 2025-01-23 03:21:10 +00:00
error: Document how to accumulate multiple errors
Backports commit 8d780f43921feb7fd8d0b58f779a22d1265f2378 from qemu
This commit is contained in:
parent
f336fc39eb
commit
9398bd49fe
|
@ -69,6 +69,23 @@
|
|||
* But when all you do with the error is pass it on, please use
|
||||
* foo(arg, errp);
|
||||
* for readability.
|
||||
*
|
||||
* Receive and accumulate multiple errors (first one wins):
|
||||
* Error *err = NULL, *local_err = NULL;
|
||||
* foo(arg, &err);
|
||||
* bar(arg, &local_err);
|
||||
* error_propagate(&err, local_err);
|
||||
* if (err) {
|
||||
* handle the error...
|
||||
* }
|
||||
*
|
||||
* Do *not* "optimize" this to
|
||||
* foo(arg, &err);
|
||||
* bar(arg, &err); // WRONG!
|
||||
* if (err) {
|
||||
* handle the error...
|
||||
* }
|
||||
* because this may pass a non-null err to bar().
|
||||
*/
|
||||
|
||||
#ifndef ERROR_H
|
||||
|
|
Loading…
Reference in a new issue