From 242195425c03779ef42059e72a92f0e0be7c46cb Mon Sep 17 00:00:00 2001 From: "Daniel P. Berrange" Date: Tue, 29 Mar 2011 11:26:55 +0100 Subject: [PATCH] Fix domain events C example on Win32 printf on Win32 does not necessarily support %lld and we don't have GNULIBs wrapper for printf(). Switch to use asprintf() for which we do have a gnulib wrapper with %lld support * examples/domain-events/events-c/event-test.c: Fix formatting of %lld on Win32 * cfg.mk: Don't require use of virAsprintf since this is an example app for out of tree users to follow --- cfg.mk | 2 +- examples/domain-events/events-c/event-test.c | 12 ++++++++++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/cfg.mk b/cfg.mk index f802cee494..4ed0d96feb 100644 --- a/cfg.mk +++ b/cfg.mk @@ -571,7 +571,7 @@ exclude_file_name_regexp--sc_prohibit_always_true_header_tests = \ (^docs|^python/(libvirt-override|typewrappers)\.c$$) exclude_file_name_regexp--sc_prohibit_asprintf = \ - ^(bootstrap.conf$$|po/|src/util/util\.c$$) + ^(bootstrap.conf$$|po/|src/util/util\.c$$|examples/domain-events/events-c/event-test\.c$$) exclude_file_name_regexp--sc_prohibit_close = \ (\.py$$|^docs/|(src/util/files\.c|src/libvirt\.c)$$) diff --git a/examples/domain-events/events-c/event-test.c b/examples/domain-events/events-c/event-test.c index 7d05dd83d7..1f46d42a21 100644 --- a/examples/domain-events/events-c/event-test.c +++ b/examples/domain-events/events-c/event-test.c @@ -169,8 +169,16 @@ static int myDomainEventRTCChangeCallback(virConnectPtr conn ATTRIBUTE_UNUSED, long long offset, void *opaque ATTRIBUTE_UNUSED) { - printf("%s EVENT: Domain %s(%d) rtc change %lld\n", __func__, virDomainGetName(dom), - virDomainGetID(dom), offset); + char *str = NULL; + /* HACK: use asprintf since we have gnulib's wrapper for %lld on Win32 + * but don't have a printf() replacement with %lld */ + if (asprintf(&str, "%s EVENT: Domain %s(%d) rtc change %lld\n", + __func__, virDomainGetName(dom), + virDomainGetID(dom), offset) < 0) + return 0; + + printf("%s", str); + free(str); return 0; } -- 2.39.5