aboutsummaryrefslogtreecommitdiff
path: root/qga/vss-win32
diff options
context:
space:
mode:
Diffstat (limited to 'qga/vss-win32')
-rw-r--r--qga/vss-win32/requester.cpp3
-rw-r--r--qga/vss-win32/requester.h2
2 files changed, 3 insertions, 2 deletions
diff --git a/qga/vss-win32/requester.cpp b/qga/vss-win32/requester.cpp
index b130fee934..aae0d5f2bf 100644
--- a/qga/vss-win32/requester.cpp
+++ b/qga/vss-win32/requester.cpp
@@ -25,8 +25,9 @@
#define err_set(e, err, fmt, ...) \
((e)->error_setg_win32((e)->errp, err, fmt, ## __VA_ARGS__))
+/* Bad idea, works only when (e)->errp != NULL: */
#define err_is_set(e) ((e)->errp && *(e)->errp)
-
+/* To lift this restriction, error_propagate(), like we do in QEMU code */
/* Handle to VSSAPI.DLL */
static HMODULE hLib;
diff --git a/qga/vss-win32/requester.h b/qga/vss-win32/requester.h
index 0a8d048874..34be5c1d11 100644
--- a/qga/vss-win32/requester.h
+++ b/qga/vss-win32/requester.h
@@ -27,7 +27,7 @@ typedef void (*ErrorSetFunc)(struct Error **errp, int win32_err,
const char *fmt, ...) GCC_FMT_ATTR(3, 4);
typedef struct ErrorSet {
ErrorSetFunc error_setg_win32;
- struct Error **errp;
+ struct Error **errp; /* restriction: must not be null */
} ErrorSet;
STDAPI requester_init(void);