All of lore.kernel.org
 help / color / mirror / Atom feed
From: Paolo Bonzini <pbonzini@redhat.com>
To: marcandre.lureau@redhat.com, qemu-devel@nongnu.org
Cc: "Thomas Huth" <thuth@redhat.com>, "Stefan Weil" <sw@weilnetz.de>,
	"Qiuhao Li" <Qiuhao.Li@outlook.com>,
	"Laurent Vivier" <lvivier@redhat.com>,
	"Stefan Hajnoczi" <stefanha@redhat.com>,
	"Hanna Reitz" <hreitz@redhat.com>,
	"Kevin Wolf" <kwolf@redhat.com>,
	"Markus Armbruster" <armbru@redhat.com>,
	qemu-block@nongnu.org, "Konstantin Kostiuk" <kkostiuk@redhat.com>,
	"Bandan Das" <bsd@redhat.com>,
	"Michael Roth" <michael.roth@amd.com>,
	"Darren Kenny" <darren.kenny@oracle.com>,
	"Alexander Bulekov" <alxndr@bu.edu>,
	"Marc-André Lureau" <marcandre.lureau@redhat.com>
Subject: Re: [PATCH 10/16] qapi/error: add g_autoptr(Error) support
Date: Thu, 05 May 2022 08:53:17 +0200	[thread overview]
Message-ID: <DB8BDCA2-868D-46CF-9AF1-28F619B98812@redhat.com> (raw)
In-Reply-To: <20220504173025.650167-11-marcandre.lureau@redhat.com>

This was rejected before on the grounds that propagating or printing the error is usually the right thing to do, and neither needs an autoptr:

https://patchew.org/QEMU/20210912124834.503032-1-pbonzini@redhat.com/

So while I do agree with the patch, for it to be accepted some Error* functions would have to be changed to accept Error** instead. This way they can NULL the variable containing their argument, and prevent the auto-error_free.

Paolo

Il 4 maggio 2022 19:30:19 CEST, marcandre.lureau@redhat.com ha scritto:
>From: Marc-André Lureau <marcandre.lureau@redhat.com>
>
>Sometime, ERRP_GUARD() isn't what you are looking for, because the
>function doesn't throw errors, yet auto-cleaning is nice to have.
>
>Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
>---
> include/qapi/error.h | 2 ++
> 1 file changed, 2 insertions(+)
>
>diff --git a/include/qapi/error.h b/include/qapi/error.h
>index d798faeec3e9..9482b6a58ae6 100644
>--- a/include/qapi/error.h
>+++ b/include/qapi/error.h
>@@ -519,6 +519,8 @@ static inline void error_propagator_cleanup(ErrorPropagator *prop)
> 
> G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC(ErrorPropagator, error_propagator_cleanup);
> 
>+G_DEFINE_AUTOPTR_CLEANUP_FUNC(Error, error_free);
>+
> /*
>  * Special error destination to abort on error.
>  * See error_setg() and error_propagate() for details.



  reply	other threads:[~2022-05-05  6:59 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-05-04 17:30 [PATCH 00/16] Misc cleanups marcandre.lureau
2022-05-04 17:30 ` [PATCH 01/16] include: move qemu_*_exec_dir() to cutils marcandre.lureau
2022-05-04 17:30 ` [PATCH 02/16] util/win32: simplify qemu_get_local_state_dir() marcandre.lureau
2022-05-04 18:07   ` Stefan Weil via
2022-05-04 17:30 ` [PATCH 03/16] tests: make libqmp buildable for win32 marcandre.lureau
2022-05-04 18:18   ` Thomas Huth
2022-05-04 17:30 ` [PATCH 04/16] compiler.h: add QEMU_{BEGIN, END}_IGNORE_INITIALIZER_OVERRIDES marcandre.lureau
2022-05-04 18:41   ` Peter Maydell
2022-05-05  6:55     ` Paolo Bonzini
2022-05-04 17:30 ` [PATCH 05/16] qobject/json-lexer: disable -Winitializer-overrides warnings marcandre.lureau
2022-05-04 17:30 ` [PATCH 06/16] include: adjust header guards after renaming marcandre.lureau
2022-05-04 18:10   ` Stefan Weil via
2022-05-04 17:30 ` [PATCH 07/16] qga: flatten safe_open_or_create() marcandre.lureau
2022-05-04 17:30 ` [PATCH 08/16] osdep: export qemu_open_cloexec() marcandre.lureau
2022-05-04 17:30 ` [PATCH 09/16] qga: use qemu_open_cloexec() for safe_open_or_create() marcandre.lureau
2022-05-04 17:30 ` [PATCH 10/16] qapi/error: add g_autoptr(Error) support marcandre.lureau
2022-05-05  6:53   ` Paolo Bonzini [this message]
2022-05-04 17:30 ` [PATCH 11/16] qga: replace qemu_open_old() with qemu_open_cloexec() marcandre.lureau
2022-05-04 17:30 ` [PATCH 12/16] test/qga: use G_TEST_DIR to locate os-release test file marcandre.lureau
2022-05-04 17:30 ` [PATCH 13/16] qga/wixl: prefer variables over environment marcandre.lureau
2022-05-04 17:30 ` [PATCH 14/16] qga/wixl: require Mingw_bin marcandre.lureau
2022-05-04 17:30 ` [PATCH 15/16] qga/wixl: simplify some pre-processing marcandre.lureau
2022-05-04 17:30 ` [PATCH 16/16] qga/wixl: replace QEMU_GA_MSI_MINGW_BIN_PATH with glib bindir marcandre.lureau
2022-05-05  6:56 ` [PATCH 00/16] Misc cleanups Paolo Bonzini

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=DB8BDCA2-868D-46CF-9AF1-28F619B98812@redhat.com \
    --to=pbonzini@redhat.com \
    --cc=Qiuhao.Li@outlook.com \
    --cc=alxndr@bu.edu \
    --cc=armbru@redhat.com \
    --cc=bsd@redhat.com \
    --cc=darren.kenny@oracle.com \
    --cc=hreitz@redhat.com \
    --cc=kkostiuk@redhat.com \
    --cc=kwolf@redhat.com \
    --cc=lvivier@redhat.com \
    --cc=marcandre.lureau@redhat.com \
    --cc=michael.roth@amd.com \
    --cc=qemu-block@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@redhat.com \
    --cc=sw@weilnetz.de \
    --cc=thuth@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.