| Index: tools/skpdiff/SkDiffContext.cpp
|
| diff --git a/tools/skpdiff/SkDiffContext.cpp b/tools/skpdiff/SkDiffContext.cpp
|
| index ea44c90da1e2efe22077bbc42c6b1d73a1353d34..8e193419a05c1c614bfab24c5d69db5bd46cf5f2 100644
|
| --- a/tools/skpdiff/SkDiffContext.cpp
|
| +++ b/tools/skpdiff/SkDiffContext.cpp
|
| @@ -18,6 +18,9 @@
|
| #include "SkImageDiffer.h"
|
| #include "skpdiff_util.h"
|
|
|
| +#include <string>
|
| +#include <algorithm>
|
| +
|
| SkDiffContext::SkDiffContext() {
|
| fDiffers = NULL;
|
| fDifferCount = 0;
|
| @@ -48,6 +51,10 @@ void SkDiffContext::setWhiteDiffDir(const SkString& path) {
|
| }
|
| }
|
|
|
| +void SkDiffContext::setLongNames(const bool useLongNames) {
|
| + longNames = useLongNames;
|
| +}
|
| +
|
| void SkDiffContext::setDiffers(const SkTDArray<SkImageDiffer*>& differs) {
|
| // Delete whatever the last array of differs was
|
| if (NULL != fDiffers) {
|
| @@ -79,6 +86,20 @@ static SkString get_common_prefix(const SkString& a, const SkString& b) {
|
| }
|
| }
|
|
|
| +static SkString sanitize_name(const SkString& str) {
|
| + std::string result = std::string(str.c_str());
|
| + std::replace(result.begin(), result.end(), '.', '_');
|
| +
|
| + return SkString(result.c_str());
|
| +}
|
| +
|
| +static SkString get_combined_name(const SkString& a, const SkString& b) {
|
| + SkString result = a;
|
| + result.append("-vs-");
|
| + result.append(b);
|
| + return sanitize_name(result);
|
| +}
|
| +
|
| void SkDiffContext::addDiff(const char* baselinePath, const char* testPath) {
|
| // Load the images at the paths
|
| SkBitmap baselineBitmap;
|
| @@ -100,7 +121,13 @@ void SkDiffContext::addDiff(const char* baselinePath, const char* testPath) {
|
| // compute the common name
|
| SkString baseName = SkOSPath::Basename(baselinePath);
|
| SkString testName = SkOSPath::Basename(testPath);
|
| - newRecord->fCommonName = get_common_prefix(baseName, testName);
|
| +
|
| + if (longNames) {
|
| + newRecord->fCommonName = get_combined_name(baseName, testName);
|
| + } else {
|
| + newRecord->fCommonName = get_common_prefix(baseName, testName);
|
| + }
|
| + newRecord->fCommonName.append(".png");
|
|
|
| newRecord->fBaselinePath = baselinePath;
|
| newRecord->fTestPath = testPath;
|
|
|