From 1c9ad7ec7353cccabb6881fd22b116daa3dcbb84 Mon Sep 17 00:00:00 2001 From: Dan Sinclair Date: Tue, 5 Sep 2017 11:19:50 -0400 Subject: Split fx_guid from fx_extension This CL splits the GUID code out of fx_extension into an fx_guid.h file. Change-Id: I915538ff98601efb07595264eff6435729193177 Reviewed-on: https://pdfium-review.googlesource.com/13090 Reviewed-by: Henrique Nakashima Commit-Queue: dsinclair --- core/fxcrt/fx_extension.cpp | 24 ------------------------ core/fxcrt/fx_extension.h | 12 ------------ core/fxcrt/fx_guid.cpp | 30 ++++++++++++++++++++++++++++++ core/fxcrt/fx_guid.h | 22 ++++++++++++++++++++++ 4 files changed, 52 insertions(+), 36 deletions(-) create mode 100644 core/fxcrt/fx_guid.cpp create mode 100644 core/fxcrt/fx_guid.h (limited to 'core/fxcrt') diff --git a/core/fxcrt/fx_extension.cpp b/core/fxcrt/fx_extension.cpp index 35a8442f40..7f73a4ccad 100644 --- a/core/fxcrt/fx_extension.cpp +++ b/core/fxcrt/fx_extension.cpp @@ -9,8 +9,6 @@ #include #include -#include "core/fxcrt/fx_rand.h" - float FXSYS_wcstof(const wchar_t* pwsStr, int32_t iLength, int32_t* pUsedLen) { ASSERT(pwsStr); if (iLength < 0) @@ -124,28 +122,6 @@ size_t FXSYS_ToUTF16BE(uint32_t unicode, char* buf) { return 8; } -#ifdef PDF_ENABLE_XFA -void FX_GUID_CreateV4(FX_GUID* pGUID) { - FX_Random_GenerateMT((uint32_t*)pGUID, 4); - uint8_t& b = ((uint8_t*)pGUID)[6]; - b = (b & 0x0F) | 0x40; -} - -CFX_ByteString FX_GUID_ToString(const FX_GUID* pGUID, bool bSeparator) { - CFX_ByteString bsStr; - char* pBuf = bsStr.GetBuffer(40); - for (int32_t i = 0; i < 16; i++) { - uint8_t b = reinterpret_cast(pGUID)[i]; - FXSYS_IntToTwoHexChars(b, pBuf); - pBuf += 2; - if (bSeparator && (i == 3 || i == 5 || i == 7 || i == 9)) - *pBuf++ = L'-'; - } - bsStr.ReleaseBuffer(bSeparator ? 36 : 32); - return bsStr; -} -#endif // PDF_ENABLE_XFA - uint32_t GetBits32(const uint8_t* pData, int bitpos, int nbits) { ASSERT(0 < nbits && nbits <= 32); const uint8_t* dataPtr = &pData[bitpos / 8]; diff --git a/core/fxcrt/fx_extension.h b/core/fxcrt/fx_extension.h index 365ab4d692..e02d58d0df 100644 --- a/core/fxcrt/fx_extension.h +++ b/core/fxcrt/fx_extension.h @@ -86,18 +86,6 @@ void FXSYS_IntToFourHexChars(uint16_t c, char* buf); size_t FXSYS_ToUTF16BE(uint32_t unicode, char* buf); - -#ifdef PDF_ENABLE_XFA -struct FX_GUID { - uint32_t data1; - uint16_t data2; - uint16_t data3; - uint8_t data4[8]; -}; -void FX_GUID_CreateV4(FX_GUID* pGUID); -CFX_ByteString FX_GUID_ToString(const FX_GUID* pGUID, bool bSeparator = true); -#endif // PDF_ENABLE_XFA - uint32_t GetBits32(const uint8_t* pData, int bitpos, int nbits); #endif // CORE_FXCRT_FX_EXTENSION_H_ diff --git a/core/fxcrt/fx_guid.cpp b/core/fxcrt/fx_guid.cpp new file mode 100644 index 0000000000..6f130f9d46 --- /dev/null +++ b/core/fxcrt/fx_guid.cpp @@ -0,0 +1,30 @@ +// Copyright 2017 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#include "core/fxcrt/fx_guid.h" + +#include "core/fxcrt/fx_extension.h" +#include "core/fxcrt/fx_rand.h" + +void FX_GUID_CreateV4(FX_GUID* pGUID) { + FX_Random_GenerateMT((uint32_t*)pGUID, 4); + uint8_t& b = ((uint8_t*)pGUID)[6]; + b = (b & 0x0F) | 0x40; +} + +CFX_ByteString FX_GUID_ToString(const FX_GUID* pGUID, bool bSeparator) { + CFX_ByteString bsStr; + char* pBuf = bsStr.GetBuffer(40); + for (int32_t i = 0; i < 16; i++) { + uint8_t b = reinterpret_cast(pGUID)[i]; + FXSYS_IntToTwoHexChars(b, pBuf); + pBuf += 2; + if (bSeparator && (i == 3 || i == 5 || i == 7 || i == 9)) + *pBuf++ = L'-'; + } + bsStr.ReleaseBuffer(bSeparator ? 36 : 32); + return bsStr; +} diff --git a/core/fxcrt/fx_guid.h b/core/fxcrt/fx_guid.h new file mode 100644 index 0000000000..e80efc4ca1 --- /dev/null +++ b/core/fxcrt/fx_guid.h @@ -0,0 +1,22 @@ +// Copyright 2017 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef CORE_FXCRT_FX_GUID_H_ +#define CORE_FXCRT_FX_GUID_H_ + +#include "core/fxcrt/fx_string.h" + +struct FX_GUID { + uint32_t data1; + uint16_t data2; + uint16_t data3; + uint8_t data4[8]; +}; + +void FX_GUID_CreateV4(FX_GUID* pGUID); +CFX_ByteString FX_GUID_ToString(const FX_GUID* pGUID, bool bSeparator = true); + +#endif // CORE_FXCRT_FX_GUID_H_ -- cgit v1.2.3