From 6942799669f3d6b55184d2e1d4cadc1be7dbdd81 Mon Sep 17 00:00:00 2001 From: Vadim Pisarevsky Date: Thu, 11 Aug 2011 22:27:18 +0000 Subject: [PATCH] fixed kmeans center initialization in the case of huge matrices (ticket #1291); fixed warinings in libtiff. --- 3rdparty/libtiff/tif_dirread.c | 4 ++-- modules/core/src/matrix.cpp | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/3rdparty/libtiff/tif_dirread.c b/3rdparty/libtiff/tif_dirread.c index 667a5d9644..a9da79769d 100644 --- a/3rdparty/libtiff/tif_dirread.c +++ b/3rdparty/libtiff/tif_dirread.c @@ -1450,14 +1450,14 @@ TIFFFetchShortPair(TIFF* tif, TIFFDirEntry* dir) case TIFF_BYTE: case TIFF_SBYTE: { - uint8 v[4]; + uint8 v[4]={0,0,0,0}; return TIFFFetchByteArray(tif, dir, v) && TIFFSetField(tif, dir->tdir_tag, v[0], v[1]); } case TIFF_SHORT: case TIFF_SSHORT: { - uint16 v[2]; + uint16 v[2]={0,0}; return TIFFFetchShortArray(tif, dir, v) && TIFFSetField(tif, dir->tdir_tag, v[0], v[1]); } diff --git a/modules/core/src/matrix.cpp b/modules/core/src/matrix.cpp index e55b0031aa..95b0c4e36f 100644 --- a/modules/core/src/matrix.cpp +++ b/modules/core/src/matrix.cpp @@ -2205,7 +2205,7 @@ static void generateCentersPP(const Mat& _data, Mat& _out_centers, { int i, j, k, dims = _data.cols, N = _data.rows; const float* data = _data.ptr(0); - int step = (int)(_data.step/sizeof(data[0])); + size_t step = _data.step/sizeof(data[0]); vector _centers(K); int* centers = &_centers[0]; vector _dist(N*3);