Many places in the code call virGetLastError() just to check the
raised error code, or domain. However virGetLastError() can return
NULL, so the code has to check for that as well.
So Instead we create functions virGetLastErrorCode and virGetLastErrorDomain
(in addition to the existing virGetLastErrorMessage) that always return a
valid error code/domain/message, to simplify callers.
Also created virHasLastErrorCode for completion
This is my first commit, for:
https://wiki.libvirt.org/page/BiteSizedTasks#Add_and_use_virGetLastErrorC...
Notes:
* There are a few instances of virGetLastErrorCode() left where we use multiple
fields from the error, which makes sense to keep it.
* I didn't manage to use virGetLastErrorDomain() (due to the above) so I'm
inclined
to remove it.
* virHasLastError is more or less only a semantic improvement over virGetLastError,
so I'm happy to revert it if needed
Signed-off-by: Ramy Elkest <ramyelkest(a)gmail.com>
ramyelkest (2):
util: adding virHasLastError and virGetLastErrorCode/Domain
all: replacing virGetLastError with virHas/GetLastErrorCode/Domain
include/libvirt/virterror.h | 3 ++
src/libvirt_public.syms | 7 +++++
src/locking/lock_driver_lockd.c | 3 +-
src/lxc/lxc_controller.c | 4 +--
src/qemu/qemu_agent.c | 3 +-
src/qemu/qemu_conf.c | 3 +-
src/qemu/qemu_domain.c | 2 +-
src/qemu/qemu_driver.c | 12 ++++----
src/qemu/qemu_hotplug.c | 2 +-
src/qemu/qemu_migration.c | 4 +--
src/qemu/qemu_monitor.c | 5 ++--
src/qemu/qemu_monitor_json.c | 2 +-
src/qemu/qemu_process.c | 2 +-
src/remote/remote_driver.c | 3 +-
src/rpc/virnetclient.c | 2 +-
src/util/virerror.c | 63 +++++++++++++++++++++++++++++++++++++++++
src/util/virfilecache.c | 3 +-
src/util/virxml.c | 4 +--
tests/commandtest.c | 2 +-
tests/testutils.c | 6 ++--
tests/virhostcputest.c | 2 +-
tests/virstoragetest.c | 8 +++---
tools/virsh-domain-monitor.c | 7 ++---
tools/virsh-domain.c | 4 +--
tools/virsh-util.c | 3 +-
tools/vsh.c | 2 +-
26 files changed, 110 insertions(+), 51 deletions(-)
--
2.7.4