diff options
author | Jonathan Feinberg <feinberg@google.com> | 2018-02-22 19:16:55 +0000 |
---|---|---|
committer | Chromium commit bot <commit-bot@chromium.org> | 2018-02-22 19:16:55 +0000 |
commit | 3185187d256ca26f2c1bf8d29196f4ac4462907e (patch) | |
tree | bc1f76d23b1fafdac2ec0899efd9a33c201ce6a1 | |
parent | aa2aff78e082f14e4bc418f68b27817f90e3f07a (diff) | |
download | pdfium-3185187d256ca26f2c1bf8d29196f4ac4462907e.tar.xz |
Add namespaces to duplicated Skia code.
When pdfium is imported into Google's internal repository, the recently
copied Skia decimal formatting code causes only-defined-once violations
because many Google internal projects depends on Skia through Google's
own copy. This patch puts pdfium's private copy of the needed function
into a namespace.
Change-Id: Id102b17f6f4652e4a50c4ff75825468fc3d90727
Reviewed-on: https://pdfium-review.googlesource.com/27530
Reviewed-by: Hal Canary <halcanary@chromium.org>
Reviewed-by: dsinclair <dsinclair@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
-rw-r--r-- | core/fpdfapi/edit/cpdf_pagecontentgenerator.cpp | 7 | ||||
-rw-r--r-- | third_party/skia_shared/SkFloatToDecimal.cpp | 4 | ||||
-rw-r--r-- | third_party/skia_shared/SkFloatToDecimal.h | 6 |
3 files changed, 14 insertions, 3 deletions
diff --git a/core/fpdfapi/edit/cpdf_pagecontentgenerator.cpp b/core/fpdfapi/edit/cpdf_pagecontentgenerator.cpp index a2d4d4f125..0584e7be48 100644 --- a/core/fpdfapi/edit/cpdf_pagecontentgenerator.cpp +++ b/core/fpdfapi/edit/cpdf_pagecontentgenerator.cpp @@ -223,10 +223,11 @@ void CPDF_PageContentGenerator::ProcessPath(std::ostringstream* buf, if (i > 0) *buf << " "; - char buffer[kMaximumSkFloatToDecimalLength]; - unsigned size = SkFloatToDecimal(pPoints[i].m_Point.x, buffer); + char buffer[pdfium::skia::kMaximumSkFloatToDecimalLength]; + unsigned size = + pdfium::skia::SkFloatToDecimal(pPoints[i].m_Point.x, buffer); buf->write(buffer, size) << " "; - size = SkFloatToDecimal(pPoints[i].m_Point.y, buffer); + size = pdfium::skia::SkFloatToDecimal(pPoints[i].m_Point.y, buffer); buf->write(buffer, size); FXPT_TYPE pointType = pPoints[i].m_Type; diff --git a/third_party/skia_shared/SkFloatToDecimal.cpp b/third_party/skia_shared/SkFloatToDecimal.cpp index ac24a11e91..1f99990b8f 100644 --- a/third_party/skia_shared/SkFloatToDecimal.cpp +++ b/third_party/skia_shared/SkFloatToDecimal.cpp @@ -48,6 +48,8 @@ static double pow10(int e) { } } +namespace pdfium { +namespace skia { /** Write a string into result, includeing a terminating '\0' (for unit testing). Return strlen(result) (for SkWStream::write) The resulting string will be in the form /[-]?([0-9]*.)?[0-9]+/ and @@ -172,3 +174,5 @@ unsigned SkFloatToDecimal(float value, char result[kMaximumSkFloatToDecimalLengt *output = '\0'; return static_cast<unsigned>(output - result); } +} // namespace skia +} // namespace pdfium diff --git a/third_party/skia_shared/SkFloatToDecimal.h b/third_party/skia_shared/SkFloatToDecimal.h index ac1042dbfb..376b093b25 100644 --- a/third_party/skia_shared/SkFloatToDecimal.h +++ b/third_party/skia_shared/SkFloatToDecimal.h @@ -8,6 +8,9 @@ #ifndef SkFloatToDecimal_DEFINED #define SkFloatToDecimal_DEFINED +namespace pdfium { +namespace skia { + constexpr unsigned kMaximumSkFloatToDecimalLength = 49; /** \fn SkFloatToDecimal @@ -31,4 +34,7 @@ constexpr unsigned kMaximumSkFloatToDecimalLength = 49; */ unsigned SkFloatToDecimal(float value, char output[kMaximumSkFloatToDecimalLength]); +} // namespace skia +} // namespace pdfium + #endif // SkFloatToDecimal_DEFINED |