summaryrefslogtreecommitdiff
path: root/media-libs/vigra/files/vigra-1.11.1-fix-incorrect-template-parameter-type.patch
diff options
context:
space:
mode:
Diffstat (limited to 'media-libs/vigra/files/vigra-1.11.1-fix-incorrect-template-parameter-type.patch')
-rw-r--r--media-libs/vigra/files/vigra-1.11.1-fix-incorrect-template-parameter-type.patch139
1 files changed, 139 insertions, 0 deletions
diff --git a/media-libs/vigra/files/vigra-1.11.1-fix-incorrect-template-parameter-type.patch b/media-libs/vigra/files/vigra-1.11.1-fix-incorrect-template-parameter-type.patch
new file mode 100644
index 000000000000..88ed61ee374c
--- /dev/null
+++ b/media-libs/vigra/files/vigra-1.11.1-fix-incorrect-template-parameter-type.patch
@@ -0,0 +1,139 @@
+From 81958d302494e137f98a8b1d7869841532f90388 Mon Sep 17 00:00:00 2001
+From: JaimeIvanCervantes <jimmycc80@hotmail.com>
+Date: Fri, 16 Jun 2017 13:21:45 -0700
+Subject: [PATCH] multi_convolution: Fix for incorrect template parameter type
+ when using unsigned int N for TinyVector SIZE. (Fixes #414)
+
+---
+ include/vigra/multi_convolution.hxx | 28 ++++++++++++++--------------
+ 1 file changed, 14 insertions(+), 14 deletions(-)
+
+diff --git a/include/vigra/multi_convolution.hxx b/include/vigra/multi_convolution.hxx
+index 1b5efa740..ec89bcf58 100644
+--- a/include/vigra/multi_convolution.hxx
++++ b/include/vigra/multi_convolution.hxx
+@@ -1426,7 +1426,7 @@ gaussianSmoothMultiArray(MultiArrayView<N, T1, S1> const & source,
+ class T2, class S2>
+ void
+ gaussianGradientMultiArray(MultiArrayView<N, T1, S1> const & source,
+- MultiArrayView<N, TinyVector<T2, N>, S2> dest,
++ MultiArrayView<N, TinyVector<T2, int(N)>, S2> dest,
+ double sigma,
+ ConvolutionOptions<N> opt = ConvolutionOptions<N>());
+
+@@ -1435,7 +1435,7 @@ gaussianSmoothMultiArray(MultiArrayView<N, T1, S1> const & source,
+ class T2, class S2>
+ void
+ gaussianGradientMultiArray(MultiArrayView<N, T1, S1> const & source,
+- MultiArrayView<N, TinyVector<T2, N>, S2> dest,
++ MultiArrayView<N, TinyVector<T2, int(N)>, S2> dest,
+ ConvolutionOptions<N> opt);
+
+ // likewise, but execute algorithm in parallel
+@@ -1443,7 +1443,7 @@ gaussianSmoothMultiArray(MultiArrayView<N, T1, S1> const & source,
+ class T2, class S2>
+ void
+ gaussianGradientMultiArray(MultiArrayView<N, T1, S1> const & source,
+- MultiArrayView<N, TinyVector<T2, N>, S2> dest,
++ MultiArrayView<N, TinyVector<T2, int(N)>, S2> dest,
+ BlockwiseConvolutionOptions<N> opt);
+ }
+ \endcode
+@@ -1590,7 +1590,7 @@ template <unsigned int N, class T1, class S1,
+ class T2, class S2>
+ inline void
+ gaussianGradientMultiArray(MultiArrayView<N, T1, S1> const & source,
+- MultiArrayView<N, TinyVector<T2, N>, S2> dest,
++ MultiArrayView<N, TinyVector<T2, int(N)>, S2> dest,
+ ConvolutionOptions<N> opt )
+ {
+ if(opt.to_point != typename MultiArrayShape<N>::type())
+@@ -1614,7 +1614,7 @@ template <unsigned int N, class T1, class S1,
+ class T2, class S2>
+ inline void
+ gaussianGradientMultiArray(MultiArrayView<N, T1, S1> const & source,
+- MultiArrayView<N, TinyVector<T2, N>, S2> dest,
++ MultiArrayView<N, TinyVector<T2, int(N)>, S2> dest,
+ double sigma,
+ ConvolutionOptions<N> opt = ConvolutionOptions<N>())
+ {
+@@ -1653,7 +1653,7 @@ gaussianGradientMagnitudeImpl(MultiArrayView<N+1, T1, S1> const & src,
+ dest.init(0.0);
+
+ typedef typename NumericTraits<T1>::RealPromote TmpType;
+- MultiArray<N, TinyVector<TmpType, N> > grad(dest.shape());
++ MultiArray<N, TinyVector<TmpType, int(N)> > grad(dest.shape());
+
+ using namespace multi_math;
+
+@@ -1771,7 +1771,7 @@ gaussianGradientMagnitude(MultiArrayView<N+1, Multiband<T1>, S1> const & src,
+ class T2, class S2>
+ void
+ symmetricGradientMultiArray(MultiArrayView<N, T1, S1> const & source,
+- MultiArrayView<N, TinyVector<T2, N>, S2> dest,
++ MultiArrayView<N, TinyVector<T2, int(N)>, S2> dest,
+ ConvolutionOptions<N> opt = ConvolutionOptions<N>());
+
+ // execute algorithm in parallel
+@@ -1779,7 +1779,7 @@ gaussianGradientMagnitude(MultiArrayView<N+1, Multiband<T1>, S1> const & src,
+ class T2, class S2>
+ void
+ symmetricGradientMultiArray(MultiArrayView<N, T1, S1> const & source,
+- MultiArrayView<N, TinyVector<T2, N>, S2> dest,
++ MultiArrayView<N, TinyVector<T2, int(N)>, S2> dest,
+ BlockwiseConvolutionOptions<N> opt);
+ }
+ \endcode
+@@ -1895,7 +1895,7 @@ template <unsigned int N, class T1, class S1,
+ class T2, class S2>
+ inline void
+ symmetricGradientMultiArray(MultiArrayView<N, T1, S1> const & source,
+- MultiArrayView<N, TinyVector<T2, N>, S2> dest,
++ MultiArrayView<N, TinyVector<T2, int(N)>, S2> dest,
+ ConvolutionOptions<N> opt = ConvolutionOptions<N>())
+ {
+ if(opt.to_point != typename MultiArrayShape<N>::type())
+@@ -2214,14 +2214,14 @@ laplacianOfGaussianMultiArray(MultiArrayView<N, T1, S1> const & source,
+ template <unsigned int N, class T1, class S1,
+ class T2, class S2>
+ void
+- gaussianDivergenceMultiArray(MultiArrayView<N, TinyVector<T1, N>, S1> const & vectorField,
++ gaussianDivergenceMultiArray(MultiArrayView<N, TinyVector<T1, int(N)>, S1> const & vectorField,
+ MultiArrayView<N, T2, S2> divergence,
+ ConvolutionOptions<N> const & opt);
+
+ template <unsigned int N, class T1, class S1,
+ class T2, class S2>
+ void
+- gaussianDivergenceMultiArray(MultiArrayView<N, TinyVector<T1, N>, S1> const & vectorField,
++ gaussianDivergenceMultiArray(MultiArrayView<N, TinyVector<T1, int(N)>, S1> const & vectorField,
+ MultiArrayView<N, T2, S2> divergence,
+ double sigma,
+ ConvolutionOptions<N> opt = ConvolutionOptions<N>());
+@@ -2231,7 +2231,7 @@ laplacianOfGaussianMultiArray(MultiArrayView<N, T1, S1> const & source,
+ template <unsigned int N, class T1, class S1,
+ class T2, class S2>
+ void
+- gaussianDivergenceMultiArray(MultiArrayView<N, TinyVector<T1, N>, S1> const & vectorField,
++ gaussianDivergenceMultiArray(MultiArrayView<N, TinyVector<T1, int(N)>, S1> const & vectorField,
+ MultiArrayView<N, T2, S2> divergence,
+ BlockwiseConvolutionOptions<N> const & opt);
+ }
+@@ -2324,7 +2324,7 @@ gaussianDivergenceMultiArray(Iterator vectorField, Iterator vectorFieldEnd,
+ template <unsigned int N, class T1, class S1,
+ class T2, class S2>
+ inline void
+-gaussianDivergenceMultiArray(MultiArrayView<N, TinyVector<T1, N>, S1> const & vectorField,
++gaussianDivergenceMultiArray(MultiArrayView<N, TinyVector<T1, int(N)>, S1> const & vectorField,
+ MultiArrayView<N, T2, S2> divergence,
+ ConvolutionOptions<N> const & opt)
+ {
+@@ -2338,7 +2338,7 @@ gaussianDivergenceMultiArray(MultiArrayView<N, TinyVector<T1, N>, S1> const & ve
+ template <unsigned int N, class T1, class S1,
+ class T2, class S2>
+ inline void
+-gaussianDivergenceMultiArray(MultiArrayView<N, TinyVector<T1, N>, S1> const & vectorField,
++gaussianDivergenceMultiArray(MultiArrayView<N, TinyVector<T1, int(N)>, S1> const & vectorField,
+ MultiArrayView<N, T2, S2> divergence,
+ double sigma,
+ ConvolutionOptions<N> opt = ConvolutionOptions<N>())