[libvirt] [PATCH] Fix domain events C example on Win32

Eric Blake eblake at redhat.com
Thu Mar 31 14:11:05 UTC 2011


On 03/31/2011 07:43 AM, Daniel P. Berrange wrote:
> printf on Win32 does not neccessarily support %lld and we don't

s/neccessarily/necessarily/

> 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 |   10 ++++++++--
>  2 files changed, 9 insertions(+), 3 deletions(-)

> 
> diff --git a/cfg.mk b/cfg.mk
> index ac419f7..0440425 100644
> --- a/cfg.mk
> +++ b/cfg.mk
> @@ -564,7 +564,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$$)

Hmm, we could factor the $$ outside of the () to reduce the line by 4 bytes.

> +++ b/examples/domain-events/events-c/event-test.c
> @@ -169,8 +169,14 @@ 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),

Is it worth wrapping this to keep it in 80 columns?

ACK with nits addressed.

-- 
Eric Blake   eblake at redhat.com    +1-801-349-2682
Libvirt virtualization library http://libvirt.org

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 619 bytes
Desc: OpenPGP digital signature
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20110331/cbbacf66/attachment-0001.sig>


More information about the libvir-list mailing list