Skip to content

Commit 546ec70

Browse files
fixed char encoding issue for error messages return by workers
1 parent 72e5d0d commit 546ec70

28 files changed

+173
-175
lines changed

cc/CatchCvExceptionWorker.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,15 @@
55

66
struct CatchCvExceptionWorker : public SimpleWorker {
77
public:
8-
const char* execute() {
8+
std::string execute() {
99
try {
1010
return executeCatchCvExceptionWorker();
1111
} catch (std::exception e) {
12-
return e.what();
12+
return std::string(e.what());
1313
}
1414
}
1515

16-
virtual const char* executeCatchCvExceptionWorker() = 0;
16+
virtual std::string executeCatchCvExceptionWorker() = 0;
1717
};
1818

1919
#endif

cc/core/Mat.cc

Lines changed: 23 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -289,7 +289,7 @@ struct Mat::PushBackWorker : public CatchCvExceptionWorker {
289289

290290
cv::Mat mat;
291291

292-
const char* executeCatchCvExceptionWorker() {
292+
std::string executeCatchCvExceptionWorker() {
293293
self.push_back(mat);
294294
return "";
295295
}
@@ -326,7 +326,7 @@ struct Mat::PopBackWorker : public CatchCvExceptionWorker {
326326

327327
int num = 1;
328328

329-
const char* executeCatchCvExceptionWorker() {
329+
std::string executeCatchCvExceptionWorker() {
330330
self.pop_back(num);
331331
return "";
332332
}
@@ -364,7 +364,7 @@ struct Mat::GetDataWorker : CatchCvExceptionWorker {
364364
size_t size;
365365
char *data;
366366

367-
const char* executeCatchCvExceptionWorker() {
367+
std::string executeCatchCvExceptionWorker() {
368368
size = mat.rows * mat.cols * mat.elemSize();
369369
data = static_cast<char *>(malloc(size));
370370
memcpy(data, mat.data, size);
@@ -418,7 +418,7 @@ struct Mat::CopyWorker : public CatchCvExceptionWorker {
418418
cv::Mat dst;
419419
cv::Mat mask = cv::noArray().getMat();
420420

421-
const char* executeCatchCvExceptionWorker() {
421+
std::string executeCatchCvExceptionWorker() {
422422
self.copyTo(dst, mask);
423423
return "";
424424
}
@@ -489,7 +489,7 @@ struct Mat::ConvertToWorker : public CatchCvExceptionWorker {
489489

490490
cv::Mat dst;
491491

492-
const char* executeCatchCvExceptionWorker() {
492+
std::string executeCatchCvExceptionWorker() {
493493
self.convertTo(dst, rtype, alpha, beta);
494494
return "";
495495
}
@@ -596,7 +596,7 @@ struct Mat::SplitChannelsWorker : public CatchCvExceptionWorker {
596596

597597
std::vector<cv::Mat> mv;
598598

599-
const char* executeCatchCvExceptionWorker() {
599+
std::string executeCatchCvExceptionWorker() {
600600
cv::split(self, mv);
601601
return "";
602602
}
@@ -632,7 +632,7 @@ struct Mat::AddWeightedWorker : public CatchCvExceptionWorker {
632632

633633
cv::Mat dst;
634634

635-
const char* executeCatchCvExceptionWorker() {
635+
std::string executeCatchCvExceptionWorker() {
636636
cv::addWeighted(self, alpha, src2, beta, gamma, dst, dtype);
637637
return "";
638638
}
@@ -680,7 +680,7 @@ struct Mat::MinMaxLocWorker : public CatchCvExceptionWorker {
680680
cv::Point2i minLoc, maxLoc;
681681
cv::Mat mask = cv::noArray().getMat();
682682

683-
const char* executeCatchCvExceptionWorker() {
683+
std::string executeCatchCvExceptionWorker() {
684684
cv::minMaxLoc(self, &minVal, &maxVal, &minLoc, &maxLoc, mask);
685685
return "";
686686
}
@@ -719,7 +719,7 @@ struct Mat::FindNonZeroWorker : public CatchCvExceptionWorker {
719719

720720
std::vector<cv::Point> idx;
721721

722-
const char* executeCatchCvExceptionWorker() {
722+
std::string executeCatchCvExceptionWorker() {
723723
cv::findNonZero(self, idx);
724724
return "";
725725
}
@@ -749,7 +749,7 @@ struct Mat::CountNonZeroWorker : public CatchCvExceptionWorker {
749749

750750
int num;
751751

752-
const char* executeCatchCvExceptionWorker() {
752+
std::string executeCatchCvExceptionWorker() {
753753
num = cv::countNonZero(self);
754754
return "";
755755
}
@@ -779,7 +779,7 @@ struct Mat::PadToSquareWorker : public CatchCvExceptionWorker {
779779

780780
cv::Vec3d fillVec = cv::Vec3d();
781781
cv::Mat out;
782-
const char* executeCatchCvExceptionWorker() {
782+
std::string executeCatchCvExceptionWorker() {
783783
int maxDim = (std::max)(self.cols, self.rows);
784784
out = cv::Mat(maxDim, maxDim, self.type(), (cv::Vec3b)fillVec);
785785

@@ -843,7 +843,7 @@ struct Mat::DCTWorker : public DTWorker {
843843
DCTWorker(cv::Mat mat, bool isInverse = false) : DTWorker(mat, isInverse) {
844844
}
845845

846-
const char* executeCatchCvExceptionWorker() {
846+
std::string executeCatchCvExceptionWorker() {
847847
if (isInverse) {
848848
cv::idct(mat, dst, flags);
849849
}
@@ -864,7 +864,7 @@ struct Mat::DFTWorker : public DTWorker {
864864

865865
int nonzeroRows = 0;
866866

867-
const char* executeCatchCvExceptionWorker() {
867+
std::string executeCatchCvExceptionWorker() {
868868
if (isInverse) {
869869
cv::idft(mat, dst, flags, nonzeroRows);
870870
}
@@ -953,7 +953,7 @@ struct Mat::MulSpectrumsWorker : public CatchCvExceptionWorker {
953953

954954
cv::Mat dst;
955955

956-
const char* executeCatchCvExceptionWorker() {
956+
std::string executeCatchCvExceptionWorker() {
957957
int flags = (dftRows ? cv::DFT_ROWS : 0);
958958
cv::mulSpectrums(mat, mat2, dst, flags, conjB);
959959
return "";
@@ -1010,7 +1010,7 @@ struct Mat::TransformWorker : public CatchCvExceptionWorker {
10101010

10111011
cv::Mat dst;
10121012

1013-
const char* executeCatchCvExceptionWorker() {
1013+
std::string executeCatchCvExceptionWorker() {
10141014
cv::transform(self, dst, m);
10151015
return "";
10161016
}
@@ -1042,7 +1042,7 @@ struct Mat::PerspectiveTransformWorker : public Mat::TransformWorker {
10421042
PerspectiveTransformWorker(cv::Mat self) : Mat::TransformWorker(self) {
10431043
}
10441044

1045-
const char* executeCatchCvExceptionWorker() {
1045+
std::string executeCatchCvExceptionWorker() {
10461046
cv::perspectiveTransform(self, dst, m);
10471047
return "";
10481048
}
@@ -1071,7 +1071,7 @@ struct Mat::OpWithCodeWorker : public CatchCvExceptionWorker {
10711071

10721072
cv::Mat dst;
10731073

1074-
const char* executeCatchCvExceptionWorker() {
1074+
std::string executeCatchCvExceptionWorker() {
10751075
cv::flip(self, dst, code);
10761076
return "";
10771077
}
@@ -1092,7 +1092,7 @@ struct Mat::FlipWorker : public OpWithCodeWorker {
10921092
FlipWorker(cv::Mat self) : OpWithCodeWorker(self) {
10931093
}
10941094

1095-
const char* executeCatchCvExceptionWorker() {
1095+
std::string executeCatchCvExceptionWorker() {
10961096
cv::flip(self, dst, code);
10971097
return "";
10981098
}
@@ -1118,7 +1118,7 @@ struct Mat::SumWorker : public CatchCvExceptionWorker {
11181118

11191119
cv::Scalar sum;
11201120

1121-
const char* executeCatchCvExceptionWorker() {
1121+
std::string executeCatchCvExceptionWorker() {
11221122
sum = cv::sum(self);
11231123
return "";
11241124
}
@@ -1163,7 +1163,7 @@ struct Mat::ConvertScaleAbsWorker : public CatchCvExceptionWorker {
11631163

11641164
cv::Mat dst;
11651165

1166-
const char* executeCatchCvExceptionWorker() {
1166+
std::string executeCatchCvExceptionWorker() {
11671167
cv::convertScaleAbs(self, dst, alpha, beta);
11681168
return "";
11691169
}
@@ -1272,7 +1272,7 @@ struct Mat::GoodFeaturesToTrackWorker : public CatchCvExceptionWorker {
12721272
}
12731273

12741274

1275-
const char* executeCatchCvExceptionWorker() {
1275+
std::string executeCatchCvExceptionWorker() {
12761276
#if CV_VERSION_MINOR >= 4
12771277
cv::goodFeaturesToTrack(
12781278
self, corners,
@@ -1317,7 +1317,7 @@ struct Mat::MeanStdDevWorker : public CatchCvExceptionWorker {
13171317
cv::Mat mean;
13181318
cv::Mat stddev;
13191319

1320-
const char* executeCatchCvExceptionWorker() {
1320+
std::string executeCatchCvExceptionWorker() {
13211321
cv::meanStdDev(self, mean, stddev, mask);
13221322
return "";
13231323
}
@@ -1353,7 +1353,7 @@ struct Mat::RotateWorker : public OpWithCodeWorker {
13531353
RotateWorker(cv::Mat self) : OpWithCodeWorker(self) {
13541354
}
13551355

1356-
const char* executeCatchCvExceptionWorker() {
1356+
std::string executeCatchCvExceptionWorker() {
13571357
cv::rotate(self, dst, code);
13581358
return "";
13591359
}

0 commit comments

Comments
 (0)