diff --git a/multimedia/vcdimager/Makefile b/multimedia/vcdimager/Makefile index 334b2c022eb4..d84a40e09447 100644 --- a/multimedia/vcdimager/Makefile +++ b/multimedia/vcdimager/Makefile @@ -1,28 +1,27 @@ PORTNAME= vcdimager -PORTVERSION= 2.0.1 -PORTREVISION= 6 +DISTVERSION= 2.0.1 +PORTREVISION= 7 CATEGORIES= multimedia MASTER_SITES= GNU MAINTAINER= multimedia@FreeBSD.org COMMENT= GNU VCDImager/VCDRip -- The GNU VideoCD Image Maker/Ripping Tool WWW= https://www.gnu.org/software/vcdimager/ LICENSE= GPLv2+ LICENSE_FILE= ${WRKSRC}/COPYING LIB_DEPENDS= libpopt.so:devel/popt \ libcdio.so:sysutils/libcdio USES= gmake gnome libtool localbase makeinfo pathfix pkgconfig USE_GNOME= libxml2 USE_LDCONFIG= yes GNU_CONFIGURE= yes -GNU_CONFIGURE_MANPREFIX=${PREFIX}/share INSTALL_TARGET= install-strip TEST_TARGET= check INFO= vcdimager vcdxrip vcd-info .include diff --git a/multimedia/vcdimager/files/patch-frontends_xml_vcd__xml__common.c b/multimedia/vcdimager/files/patch-frontends_xml_vcd__xml__common.c new file mode 100644 index 000000000000..a76d8ce6da95 --- /dev/null +++ b/multimedia/vcdimager/files/patch-frontends_xml_vcd__xml__common.c @@ -0,0 +1,35 @@ +--- frontends/xml/vcd_xml_common.c.orig 2018-01-03 20:17:37 UTC ++++ frontends/xml/vcd_xml_common.c +@@ -242,16 +242,26 @@ _convert (const char in[], const char encoding[], bool + + temp = size - 1; + if (from) { +- if (NULL != handler->output) +- ret = handler->output (out, &out_size, (const unsigned char *) in, &temp); +- else ++ if (!(handler->flags & 2) && NULL != handler->output.func) ++ ret = handler->output.func (handler->outputCtxt, out, &out_size, (const unsigned char *) in, &temp, 1); ++ if ((handler->flags & 2) && NULL != handler->output.legacyFunc) ++ ret = handler->output.legacyFunc (out, &out_size, (const unsigned char *) in, &temp); ++ else { ++ xmlCharEncCloseFunc(handler); + return strdup(in); ++ } + } else { +- if (NULL != handler->input) +- ret = handler->input (out, &out_size, (const unsigned char *) in, &temp); +- else ++ if (!(handler->flags & 2) && NULL != handler->input.func) ++ ret = handler->input.func (handler->inputCtxt, out, &out_size, (const unsigned char *) in, &temp, 1); ++ if ((handler->flags & 2) && NULL != handler->input.legacyFunc) ++ ret = handler->input.legacyFunc (out, &out_size, (const unsigned char *) in, &temp); ++ else { ++ xmlCharEncCloseFunc(handler); + return strdup(in); ++ } + } ++ ++ xmlCharEncCloseFunc(handler); + + if (ret < 0 || (temp - size + 1)) + {