From: Brad King Date: Wed, 21 Oct 2015 16:00:41 +0000 (-0400) Subject: Workaround missing byte swap symbol on VS 7.1 Debug builds X-Git-Tag: v3.1.900a~49 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=cecac1996cb9cafd5d37f444211fd490d0f8d61a;p=thirdparty%2Flibarchive.git Workaround missing byte swap symbol on VS 7.1 Debug builds The VS 7.1 MS C Debug runtime library does not export _byteswap_ushort. --- diff --git a/libarchive/archive_read_support_format_lha.c b/libarchive/archive_read_support_format_lha.c index f8e01af81..c359d83ef 100644 --- a/libarchive/archive_read_support_format_lha.c +++ b/libarchive/archive_read_support_format_lha.c @@ -1712,7 +1712,7 @@ lha_crc16(uint16_t crc, const void *pp, size_t len) for (;len >= 8; len -= 8) { /* This if statement expects compiler optimization will * remove the stament which will not be executed. */ -#ifdef _MSC_VER /* Visual Studio */ +#if defined(_MSC_VER) && _MSC_VER >= 1400 /* Visual Studio */ # define bswap16(x) _byteswap_ushort(x) #elif (defined(__GNUC__) && __GNUC__ >= 4 && __GNUC_MINOR__ >= 8) \ || defined(__clang__)