Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 30 Jul 2018 23:57:08 +0000
From:      bugzilla-noreply@freebsd.org
To:        multimedia@FreeBSD.org
Subject:   maintainer-feedback requested: [Bug 230211] multimedia/avidemux-plugins fails to build: ISO C++ forbids comparison between pointer and integer [-fpermissive] (upstream patch)
Message-ID:  <bug-230211-12827-wzuY3bohSa@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-230211-12827@https.bugs.freebsd.org/bugzilla/>
References:  <bug-230211-12827@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
Bugzilla Automation <bugzilla@FreeBSD.org> has asked freebsd-multimedia mai=
ling
list <multimedia@FreeBSD.org> for maintainer-feedback:
Bug 230211: multimedia/avidemux-plugins fails to build: ISO C++ forbids
comparison between pointer and integer [-fpermissive] (upstream patch)
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D230211



--- Description ---
After update GCC from 6.4 to 7.3 multimedia/avidemux-plugins fails to build
with this error:
>
/tmp/work/usr/ports/multimedia/avidemux-plugins/work/avidemux_2.6.11/avidem=
ux_p
lugins/ADM_muxers/muxerMp4v2/libmp4v2/src/rtphint.cpp: In member function '=
void
mp4v2::impl::MP4RtpHintTrack::GetPayload(char**, uint8_t*, uint16_t*, char*=
*)':
>
/tmp/work/usr/ports/multimedia/avidemux-plugins/work/avidemux_2.6.11/avidem=
ux_p
lugins/ADM_muxers/muxerMp4v2/libmp4v2/src/rtphint.cpp:342:35: error: ISO C++
forbids comparison between pointer and integer [-fpermissive]
>		      if (pSlash !=3D '\0') {

Look at code:
>    const char* pSlash;
=E2=80=A6
>	     if (pSlash && ppEncodingParams) {
>		 pSlash++;
>		 pSlash =3D strchr(pSlash, '/');
>		 if (pSlash !=3D NULL) {
>		     pSlash++;
>		     if (pSlash !=3D '\0') {
Error on this line ^^^^^^^^^^^^^^^^^^^^^^^^.
Obvious it's incorrect code and most probably it have to be "if (*pSlash !=
=3D
'\0')".
>			 length =3D (uint32_t)strlen(pRtpMap) - (pSlash -
pRtpMap);
>			 *ppEncodingParams =3D (char *)MP4Calloc(length + 1);
>			 strncpy(*ppEncodingParams, pSlash, length);
>		     }
>		 }
>	     }

In upstream this line was replaced on "if (*pSlash)", as expected.

Just put file
patch-avidemux__plugins_ADM__muxers_muxerMp4v2_libmp4v2_src_rtphint.cpp in
multimedia/avidemux/files/ - work for me on 11.2 amd64 and i386.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-230211-12827-wzuY3bohSa>