[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 16/34] error: make Error **errp const where it is appropriate
From: |
Markus Armbruster |
Subject: |
[PULL 16/34] error: make Error **errp const where it is appropriate |
Date: |
Tue, 17 Dec 2019 07:26:33 +0100 |
From: Vladimir Sementsov-Ogievskiy <address@hidden>
Mostly, Error ** is for returning error from the function, so the
callee sets it. However these three functions get already filled errp
parameter. They don't change the pointer itself, only change the
internal state of referenced Error object. So we can make it
Error *const * errp, to stress the behavior. It will also help
coccinelle script (in future) to distinguish such cases from common
errp usage.
Signed-off-by: Vladimir Sementsov-Ogievskiy <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Reviewed-by: Markus Armbruster <address@hidden>
[Commit message typo fixed]
Signed-off-by: Markus Armbruster <address@hidden>
---
include/qapi/error.h | 6 +++---
util/error.c | 6 +++---
2 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/include/qapi/error.h b/include/qapi/error.h
index 3f95141a01..ad5b6e896d 100644
--- a/include/qapi/error.h
+++ b/include/qapi/error.h
@@ -233,13 +233,13 @@ void error_propagate_prepend(Error **dst_errp, Error
*local_err,
* Prepend some text to @errp's human-readable error message.
* The text is made by formatting @fmt, @ap like vprintf().
*/
-void error_vprepend(Error **errp, const char *fmt, va_list ap);
+void error_vprepend(Error *const *errp, const char *fmt, va_list ap);
/*
* Prepend some text to @errp's human-readable error message.
* The text is made by formatting @fmt, ... like printf().
*/
-void error_prepend(Error **errp, const char *fmt, ...)
+void error_prepend(Error *const *errp, const char *fmt, ...)
GCC_FMT_ATTR(2, 3);
/*
@@ -256,7 +256,7 @@ void error_prepend(Error **errp, const char *fmt, ...)
* May be called multiple times. The resulting hint should end with a
* newline.
*/
-void error_append_hint(Error **errp, const char *fmt, ...)
+void error_append_hint(Error *const *errp, const char *fmt, ...)
GCC_FMT_ATTR(2, 3);
/*
diff --git a/util/error.c b/util/error.c
index d4532ce318..b6c89d1412 100644
--- a/util/error.c
+++ b/util/error.c
@@ -121,7 +121,7 @@ void error_setg_file_open_internal(Error **errp,
"Could not open '%s'", filename);
}
-void error_vprepend(Error **errp, const char *fmt, va_list ap)
+void error_vprepend(Error *const *errp, const char *fmt, va_list ap)
{
GString *newmsg;
@@ -136,7 +136,7 @@ void error_vprepend(Error **errp, const char *fmt, va_list
ap)
(*errp)->msg = g_string_free(newmsg, 0);
}
-void error_prepend(Error **errp, const char *fmt, ...)
+void error_prepend(Error *const *errp, const char *fmt, ...)
{
va_list ap;
@@ -145,7 +145,7 @@ void error_prepend(Error **errp, const char *fmt, ...)
va_end(ap);
}
-void error_append_hint(Error **errp, const char *fmt, ...)
+void error_append_hint(Error *const *errp, const char *fmt, ...)
{
va_list ap;
int saved_errno = errno;
--
2.21.0
- [PULL 13/34] hw/intc/s390: Simplify error handling in kvm_s390_flic_realize(), (continued)
- [PULL 13/34] hw/intc/s390: Simplify error handling in kvm_s390_flic_realize(), Markus Armbruster, 2019/12/17
- [PULL 05/34] tests: Clean up initialization of Error *err variables, Markus Armbruster, 2019/12/17
- [PULL 07/34] hw/acpi: Fix legacy CPU plug error API violations, Markus Armbruster, 2019/12/17
- [PULL 26/34] monitor/qmp-cmds: rename Error ** parameter to more common errp, Markus Armbruster, 2019/12/17
- [PULL 33/34] hw/vfio/ap: drop local_err from vfio_ap_realize, Markus Armbruster, 2019/12/17
- [PULL 09/34] hw/ipmi: Fix realize() error API violations, Markus Armbruster, 2019/12/17
- [PULL 29/34] hw/tpm: rename Error ** parameter to more common errp, Markus Armbruster, 2019/12/17
- [PULL 10/34] qga: Fix guest-get-fsinfo error API violations, Markus Armbruster, 2019/12/17
- [PULL 06/34] exec: Fix file_ram_alloc() error API violations, Markus Armbruster, 2019/12/17
- [PULL 15/34] net/net: Clean up variable shadowing in net_client_init(), Markus Armbruster, 2019/12/17
- [PULL 16/34] error: make Error **errp const where it is appropriate,
Markus Armbruster <=
- [PULL 28/34] hw/sd: drop extra whitespace in sdhci_sysbus_realize() header, Markus Armbruster, 2019/12/17
- [PULL 19/34] qdev-monitor: make Error **errp const where it is appropriate, Markus Armbruster, 2019/12/17
- [PULL 18/34] vnc: drop Error pointer indirection in vnc_client_io_error, Markus Armbruster, 2019/12/17
- [PULL 23/34] block/snapshot: rename Error ** parameter to more common errp, Markus Armbruster, 2019/12/17
- [PULL 32/34] backends/cryptodev: drop local_err from cryptodev_backend_complete(), Markus Armbruster, 2019/12/17
- [PULL 34/34] nbd: assert that Error** is not NULL in nbd_iter_channel_error, Markus Armbruster, 2019/12/17
- [PULL 30/34] hw/usb: rename Error ** parameter to more common errp, Markus Armbruster, 2019/12/17