| Index: fpdfsdk/src/javascript/global.cpp
|
| diff --git a/fpdfsdk/src/javascript/global.cpp b/fpdfsdk/src/javascript/global.cpp
|
| index 88b3fe77ce79dc73816dbe4ac31ac2c9e360465f..b45fd045588a6fa984039e89241aa2e85f2fec45 100644
|
| --- a/fpdfsdk/src/javascript/global.cpp
|
| +++ b/fpdfsdk/src/javascript/global.cpp
|
| @@ -18,24 +18,24 @@
|
|
|
| // Helper class for compile-time calculation of hash values in order to
|
| // avoid having global object initializers.
|
| -template <unsigned ACC, wchar_t... Ns>
|
| -struct CHash;
|
| -
|
| -// Only needed to hash single-character strings.
|
| -template <wchar_t N>
|
| -struct CHash<N> {
|
| - static const unsigned value = N;
|
| -};
|
| -
|
| -template <unsigned ACC, wchar_t N>
|
| -struct CHash<ACC, N> {
|
| - static const unsigned value = (ACC * 1313LLU + N) & 0xFFFFFFFF;
|
| -};
|
| -
|
| -template <unsigned ACC, wchar_t N, wchar_t... Ns>
|
| -struct CHash<ACC, N, Ns...> {
|
| - static const unsigned value = CHash<CHash<ACC, N>::value, Ns...>::value;
|
| -};
|
| +template <unsigned ACC, wchar_t... Ns>
|
| +struct CHash;
|
| +
|
| +// Only needed to hash single-character strings.
|
| +template <wchar_t N>
|
| +struct CHash<N> {
|
| + static const unsigned value = N;
|
| +};
|
| +
|
| +template <unsigned ACC, wchar_t N>
|
| +struct CHash<ACC, N> {
|
| + static const unsigned value = (ACC * 1313LLU + N) & 0xFFFFFFFF;
|
| +};
|
| +
|
| +template <unsigned ACC, wchar_t N, wchar_t... Ns>
|
| +struct CHash<ACC, N, Ns...> {
|
| + static const unsigned value = CHash<CHash<ACC, N>::value, Ns...>::value;
|
| +};
|
|
|
| extern const unsigned int JSCONST_nStringHash =
|
| CHash<'s','t','r','i','n','g'>::value;
|
|
|