[FFmpeg-devel] [PATCH v1] avformat/ipfsgateway: define PATH_MAX

Martin Storsjö martin at martin.st
Thu Apr 14 16:41:10 EEST 2022


On Thu, 14 Apr 2022, Mark Gaiser wrote:

> On Thu, Apr 14, 2022 at 10:25 AM Martin Storsjö <martin at martin.st> wrote:
>
>> On Wed, 13 Apr 2022, Mark Gaiser wrote:
>>
>> > On Wed, Apr 13, 2022 at 5:21 PM Mark Gaiser <markg85 at gmail.com> wrote:
>> >
>> >> PATH_MAX is posix. Some compilers (MSVC) don't define this
>> >> thus failing to compile the ipfsgateway file.
>> >> Defining it fixes the compile.
>> >>
>> >> Signed-off-by: Mark Gaiser <markg85 at gmail.com>
>> >> ---
>> >>  libavformat/ipfsgateway.c | 6 ++++++
>> >>  1 file changed, 6 insertions(+)
>> >>
>> >> diff --git a/libavformat/ipfsgateway.c b/libavformat/ipfsgateway.c
>> >> index ed37e552dd..9b0d3dea59 100644
>> >> --- a/libavformat/ipfsgateway.c
>> >> +++ b/libavformat/ipfsgateway.c
>> >> @@ -25,6 +25,12 @@
>> >>  #include "os_support.h"
>> >>  #include "url.h"
>> >>
>> >> +// Define the posix PATH_MAX if not there already.
>> >> +// This fixes a compile issue for MSVC.
>> >> +#ifndef PATH_MAX
>> >> +#define PATH_MAX 4096
>> >> +#endif
>> >> +
>> >>  typedef struct IPFSGatewayContext {
>> >>      AVClass *class;
>> >>      URLContext *inner;
>> >> --
>> >> 2.35.1
>> >
>> > I did verify the size of PATH_MAX. On my pc (arch with GCC compiler)
>> > this value is defined as 4096. That seems enough to me. Another way to
>> > fix this is to add it in os_support.h. I didn't add it there because
>> > ipfsgateway.c is currently the only cross-platform code that makes use
>> > of this.
>> >
>> > Lastly, I don't have an MSVC compiler and windows to test this on.
>> > I hope someone else in that setup can verify that this does indeed fix
>> the
>> > ffmpeg master build?
>>
>> This looks like a reasonable fix to at least make things build correctly
>> again (and it does fix the issue).
>>
>> FWIW, the corresponding Windows define is MAX_PATH, which usually is 260,
>> so setting it to 4096 here is probably more than enough if a hardcoded
>> value is needed.
>>
>> // Martin
>>
>
> Glad it works! Thank you for testing.
>
> I don't have commit/merge powers so I leave that in the capable hands of
> those that can.

I already pushed this one - I forgot to explicitly spell that out in the 
previous message.

// Martin


More information about the ffmpeg-devel mailing list