diff --git a/cmdutils.c b/cmdutils.c index a0ad3ef747..3ed143e5f4 100644 --- a/cmdutils.c +++ b/cmdutils.c @@ -29,6 +29,7 @@ references to libraries that are not being built. */ #include "config.h" +#include "compat/va_copy.h" #include "libavformat/avformat.h" #include "libavfilter/avfilter.h" #include "libavdevice/avdevice.h" diff --git a/compat/msvcrt/snprintf.c b/compat/msvcrt/snprintf.c index 0800192338..36f6dd17cb 100644 --- a/compat/msvcrt/snprintf.c +++ b/compat/msvcrt/snprintf.c @@ -24,6 +24,7 @@ #include #include +#include "compat/va_copy.h" #include "libavutil/error.h" int avpriv_snprintf(char *s, size_t n, const char *fmt, ...) diff --git a/compat/va_copy.h b/compat/va_copy.h new file mode 100644 index 0000000000..f894771949 --- /dev/null +++ b/compat/va_copy.h @@ -0,0 +1,26 @@ +/* + * MSVC Compatible va_copy macro + * Copyright (c) 2012 Derek Buitenhuis + * + * This file is part of FFmpeg. + * + * FFmpeg is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * FFmpeg is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with FFmpeg; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#include + +#if !defined(va_copy) && defined(_MSC_VER) +#define va_copy(dst, src) ((dst) = (src)) +#endif