summaryrefslogtreecommitdiff
path: root/debian/patches/dyson.patch
blob: 0319a5e75bb98214d31c087156ee03681c4c6c76 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
Index: opencv-2.4.9.1+dfsg1/modules/ts/src/ts.cpp
===================================================================
--- opencv-2.4.9.1+dfsg1.orig/modules/ts/src/ts.cpp
+++ opencv-2.4.9.1+dfsg1/modules/ts/src/ts.cpp
@@ -562,7 +562,7 @@ void TS::vprintf( int streams, const cha
     for( int i = 0; i < MAX_IDX; i++ )
         if( (streams & (1 << i)) )
         {
-            output_buf[i] += std::string(str);
+            output_buf[i] += ::std::string(str);
             // in the new GTest-based framework we do not use
             // any output files (except for the automatically generated xml report).
             // if a test fails, all the buffers are printed, so we do not want to duplicate the information and
@@ -617,7 +617,7 @@ void smoothBorder(Mat& img, const Scalar
     Scalar s;
     uchar *p = NULL;
     int n = 100/delta;
-    int nR = std::min(n, (img.rows+1)/2), nC = std::min(n, (img.cols+1)/2);
+    int nR = ::std::min(n, (img.rows+1)/2), nC = ::std::min(n, (img.cols+1)/2);
 
     int r, c, i;
     for(r=0; r<nR; r++)
Index: opencv-2.4.9.1+dfsg1/modules/contrib/src/inputoutput.cpp
===================================================================
--- opencv-2.4.9.1+dfsg1.orig/modules/contrib/src/inputoutput.cpp
+++ opencv-2.4.9.1+dfsg1/modules/contrib/src/inputoutput.cpp
@@ -7,6 +7,7 @@
     #include <tchar.h>
 #else
     #include <dirent.h>
+    #include <sys/stat.h>
 #endif
 
 namespace cv
@@ -72,14 +73,18 @@ namespace cv
             (void)addPath;
             DIR *dp;
             struct dirent *dirp;
+            int dfd;
+            struct stat st;
             if((dp = opendir(path.c_str())) == NULL)
             {
                 return list;
             }
+            dfd = dirfd(dp);
 
             while ((dirp = readdir(dp)) != NULL)
             {
-                if (dirp->d_type == DT_REG)
+                if ((0 == fstatat(dfd, dirp->d_name, &st, 0)) &&
+                    S_ISREG(st.st_mode))
                 {
                     if (exten.compare("*") == 0)
                         list.push_back(static_cast<std::string>(dirp->d_name));
@@ -162,14 +167,18 @@ namespace cv
             (void)addPath;
             DIR *dp;
             struct dirent *dirp;
+            int dfd;
+            struct stat st;
             if((dp = opendir(path_f.c_str())) == NULL)
             {
                 return list;
             }
+            dfd = dirfd(dp);
 
             while ((dirp = readdir(dp)) != NULL)
             {
-                if (dirp->d_type == DT_DIR &&
+                if ((0 == fstatat(dfd, dirp->d_name, &st, 0)) &&
+                    S_ISDIR(st.st_mode) &&
                     strcmp(dirp->d_name, ".") != 0 &&
                     strcmp(dirp->d_name, "..") != 0 )
                 {