[libvirt] [PATCH 6/7] Ensure xmlSaveToBuffer is always defined

Peter Krempa pkrempa at redhat.com
Thu Mar 7 17:22:46 UTC 2013


On 03/07/13 17:41, Daniel P. Berrange wrote:
> From: "Daniel P. Berrange" <berrange at redhat.com>
>
> RHEL4 vintage libxml2 header files are missing xmlSaveToBuffer
> despite the symbol existing in the binary
>
> Signed-off-by: Daniel P. Berrange <berrange at redhat.com>
> ---
>   tools/virsh-domain.c | 11 +++++++++++
>   1 file changed, 11 insertions(+)
>
> diff --git a/tools/virsh-domain.c b/tools/virsh-domain.c
> index 96dd4fa..950fc86 100644
> --- a/tools/virsh-domain.c
> +++ b/tools/virsh-domain.c
> @@ -56,6 +56,17 @@
>   #include "virtypedparam.h"
>   #include "virxml.h"
>
> +/* libxml2 in RHEL4 has this symbol in the binary but it
> + * is commented out in the header, despite apparently
> + * working fine. This hacks around that header problem
> + */
> +#ifndef xmlSaveToBuffer
> +XMLPUBFUN xmlSaveCtxtPtr XMLCALL
> +xmlSaveToBuffer         (xmlBufferPtr buffer,
> +			 const char *encoding,
> +			 int options);

The code where you copied this from uses tabs for indentation breaking 
the syntax check.

> +#endif
> +
>   /* Gnulib doesn't guarantee SA_SIGINFO support.  */
>   #ifndef SA_SIGINFO
>   # define SA_SIGINFO 0
>

I can't say I like this kind of hacks, but the explanation is fair 
enough. Additionally the only function using that call is unused so it 
might be better #if 0 it out instead of having the ATTRIBUTE_UNUSED and 
that hack in the code.

Peter




More information about the libvir-list mailing list