summaryrefslogtreecommitdiff
path: root/xfa/src/fgas
diff options
context:
space:
mode:
Diffstat (limited to 'xfa/src/fgas')
-rw-r--r--xfa/src/fgas/include/fx_sys.h50
-rw-r--r--xfa/src/fgas/src/crt/fx_system.cpp143
-rw-r--r--xfa/src/fgas/src/crt/fx_utils.cpp8
3 files changed, 20 insertions, 181 deletions
diff --git a/xfa/src/fgas/include/fx_sys.h b/xfa/src/fgas/include/fx_sys.h
index b4732d7728..5b5382ec14 100644
--- a/xfa/src/fgas/include/fx_sys.h
+++ b/xfa/src/fgas/include/fx_sys.h
@@ -7,61 +7,15 @@
#ifndef XFA_SRC_FGAS_INCLUDE_FX_SYS_H_
#define XFA_SRC_FGAS_INCLUDE_FX_SYS_H_
-#ifdef __cplusplus
-extern "C" {
-#endif
#define FX_RAD2DEG(r) ((r)*180.0f / FX_PI)
#define FX_DEG2RAD(a) ((a)*FX_PI / 180.0f)
-typedef int8_t* FX_LPINT8;
-typedef int8_t const* FX_LPCINT8;
-typedef int32_t* FX_LPINT32;
-typedef int32_t const* FX_LPCINT32;
-typedef long FX_LONG;
-typedef FX_LONG* FX_LPLONG;
-typedef FX_LONG const* FX_LPCLONG;
-typedef FX_FLOAT const* FX_LPCFLOAT;
-typedef double FX_DOUBLE;
-typedef FX_DOUBLE* FX_LPDOUBLE;
-typedef FX_DOUBLE const* FX_LPCDOUBLE;
-FX_FLOAT FX_tan(FX_FLOAT a);
-FX_FLOAT FX_log(FX_FLOAT b, FX_FLOAT x);
-FX_FLOAT FX_strtof(const FX_CHAR* pcsStr,
- int32_t iLength = -1,
- int32_t* pUsedLen = NULL);
+
FX_FLOAT FX_wcstof(const FX_WCHAR* pwsStr,
int32_t iLength = -1,
int32_t* pUsedLen = NULL);
-FX_WCHAR* FX_wcsncpy(FX_WCHAR* dstStr, const FX_WCHAR* srcStr, size_t count);
int32_t FX_wcsnicmp(const FX_WCHAR* s1, const FX_WCHAR* s2, size_t count);
-int32_t FX_strnicmp(const FX_CHAR* s1, const FX_CHAR* s2, size_t count);
-inline FX_BOOL FX_islower(int32_t ch) {
- return ch >= 'a' && ch <= 'z';
-}
-inline FX_BOOL FX_isupper(int32_t ch) {
- return ch >= 'A' && ch <= 'Z';
-}
-inline int32_t FX_tolower(int32_t ch) {
- return FX_isupper(ch) ? (ch + 0x20) : ch;
-}
-inline int32_t FX_toupper(int32_t ch) {
- return FX_islower(ch) ? (ch - 0x20) : ch;
-}
+
int32_t FX_filelength(FXSYS_FILE* file);
FX_BOOL FX_fsetsize(FXSYS_FILE* file, int32_t size);
-void FX_memset(void* pBuf, int32_t iValue, size_t size);
-void FX_memcpy(void* pDst, const void* pSrc, size_t size);
-FX_BOOL FX_IsRelativePath(const CFX_WideStringC& wsPath);
-FX_BOOL FX_JoinPath(const CFX_WideStringC& wsBasePath,
- const CFX_WideStringC& wsRelativePath,
- CFX_WideString& wsAbsolutePath);
-typedef struct _FX_VERSION {
- FX_DWORD dwMajorVersion;
- FX_DWORD dwMinorVersion;
- FX_DWORD dwBuildVersion;
-} FX_VERSION, *FX_LPVERSION;
-typedef FX_VERSION const* FX_LPCVERSION;
-#ifdef __cplusplus
-};
-#endif
#endif // XFA_SRC_FGAS_INCLUDE_FX_SYS_H_
diff --git a/xfa/src/fgas/src/crt/fx_system.cpp b/xfa/src/fgas/src/crt/fx_system.cpp
index b11fcd271e..cfac8bfcd7 100644
--- a/xfa/src/fgas/src/crt/fx_system.cpp
+++ b/xfa/src/fgas/src/crt/fx_system.cpp
@@ -13,23 +13,19 @@
#elif _FX_OS_ == _FX_LINUX_DESKTOP_ || _FX_OS_ == _FX_LINUX_Mini_
#include <sys/times.h>
#endif
-#ifdef __cplusplus
-extern "C" {
-#endif
-FX_FLOAT FX_tan(FX_FLOAT a) {
- return (FX_FLOAT)tan(a);
-}
-FX_FLOAT FX_log(FX_FLOAT b, FX_FLOAT x) {
- return FXSYS_log(x) / FXSYS_log(b);
+
+namespace {
+
+inline FX_BOOL FX_isupper(int32_t ch) {
+ return ch >= 'A' && ch <= 'Z';
}
-FX_WCHAR* FX_wcsncpy(FX_WCHAR* dstStr, const FX_WCHAR* srcStr, size_t count) {
- FXSYS_assert(dstStr != NULL && srcStr != NULL && count > 0);
- for (size_t i = 0; i < count; ++i)
- if ((dstStr[i] = srcStr[i]) == L'\0') {
- break;
- }
- return dstStr;
+
+inline int32_t FX_tolower(int32_t ch) {
+ return FX_isupper(ch) ? (ch + 0x20) : ch;
}
+
+} // namespace
+
int32_t FX_wcsnicmp(const FX_WCHAR* s1, const FX_WCHAR* s2, size_t count) {
FXSYS_assert(s1 != NULL && s2 != NULL && count > 0);
FX_WCHAR wch1 = 0, wch2 = 0;
@@ -42,18 +38,7 @@ int32_t FX_wcsnicmp(const FX_WCHAR* s1, const FX_WCHAR* s2, size_t count) {
}
return wch1 - wch2;
}
-int32_t FX_strnicmp(const FX_CHAR* s1, const FX_CHAR* s2, size_t count) {
- FXSYS_assert(s1 != NULL && s2 != NULL && count > 0);
- FX_CHAR ch1 = 0, ch2 = 0;
- while (count-- > 0) {
- ch1 = (FX_CHAR)FX_tolower(*s1++);
- ch2 = (FX_CHAR)FX_tolower(*s2++);
- if (ch1 != ch2) {
- break;
- }
- }
- return ch1 - ch2;
-}
+
int32_t FX_filelength(FXSYS_FILE* file) {
FXSYS_assert(file != NULL);
#if _FX_OS_ == _FX_WIN32_DESKTOP_ || _FX_OS_ == _FX_WIN64_
@@ -66,6 +51,7 @@ int32_t FX_filelength(FXSYS_FILE* file) {
return iLen;
#endif
}
+
FX_BOOL FX_fsetsize(FXSYS_FILE* file, int32_t size) {
FXSYS_assert(file != NULL);
#if _FX_OS_ == _FX_WIN32_DESKTOP_ || _FX_OS_ == _FX_WIN64_
@@ -81,14 +67,7 @@ FX_BOOL FX_fsetsize(FXSYS_FILE* file, int32_t size) {
return FALSE;
#endif
}
-FX_FLOAT FX_strtof(const FX_CHAR* pcsStr, int32_t iLength, int32_t* pUsedLen) {
- FXSYS_assert(pcsStr != NULL);
- if (iLength < 0) {
- iLength = FXSYS_strlen(pcsStr);
- }
- return FX_wcstof(CFX_WideString::FromLocal(CFX_ByteString(pcsStr, iLength)),
- iLength, pUsedLen);
-}
+
FX_FLOAT FX_wcstof(const FX_WCHAR* pwsStr, int32_t iLength, int32_t* pUsedLen) {
FXSYS_assert(pwsStr != NULL);
if (iLength < 0) {
@@ -133,97 +112,3 @@ FX_FLOAT FX_wcstof(const FX_WCHAR* pwsStr, int32_t iLength, int32_t* pUsedLen) {
}
return bNegtive ? -fValue : fValue;
}
-void FX_memset(void* pBuf, int32_t iValue, size_t size) {
- FXSYS_assert(pBuf != NULL && size > 0 && (size & 0x03) == 0);
- FXSYS_assert((((size_t)pBuf) & 0x03) == 0);
- FX_DWORD* pStart = (FX_DWORD*)pBuf;
- FX_DWORD* pEnd = pStart + (size >> 2);
- while (pStart < pEnd) {
- *pStart++ = iValue;
- }
-}
-void FX_memcpy(void* pDst, const void* pSrc, size_t size) {
- FXSYS_assert(pDst != NULL && pSrc != NULL && size > 0 && (size & 0x03) == 0);
- FXSYS_assert((((size_t)pDst) & 0x03) == 0 && (((size_t)pSrc) & 0x03) == 0);
- FX_DWORD* pStart = (FX_DWORD*)pDst;
- FX_DWORD* pEnd = pStart + (size >> 2);
- FX_DWORD* pValue = (FX_DWORD*)pSrc;
- while (pStart < pEnd) {
- *pStart++ = *pValue++;
- }
-}
-FX_BOOL FX_IsRelativePath(const CFX_WideStringC& wsUrl) {
- int32_t iUrlLen = wsUrl.GetLength();
- if (iUrlLen == 0) {
- return TRUE;
- }
- for (int32_t i = std::min(5, iUrlLen) - 1; i >= 0; --i)
- if (wsUrl.GetAt(i) == ':') {
- return FALSE;
- }
- return TRUE;
-}
-FX_BOOL FX_JoinPath(const CFX_WideStringC& wsBasePath,
- const CFX_WideStringC& wsRelativePath,
- CFX_WideString& wsAbsolutePath) {
- if (!FX_IsRelativePath(wsRelativePath)) {
- wsAbsolutePath = wsRelativePath;
- return TRUE;
- }
- const FX_WCHAR* pRelStart = wsRelativePath.GetPtr();
- const FX_WCHAR* pRelEnd = pRelStart + wsRelativePath.GetLength();
- if (pRelStart < pRelEnd) {
- switch (*pRelStart) {
- case '#':
- wsAbsolutePath = CFX_WideString(wsBasePath, wsRelativePath);
- return wsAbsolutePath.GetLength() > 0;
- case '/':
- case '\\':
- wsAbsolutePath = wsRelativePath;
- return wsAbsolutePath.GetLength() > 0;
- }
- }
- int32_t nBackCount = 0;
- for (;;) {
- if (pRelStart >= pRelEnd) {
- wsAbsolutePath = wsBasePath;
- return TRUE;
- }
- if (*pRelStart != '.') {
- break;
- }
- if (pRelStart + 1 < pRelEnd &&
- (pRelStart[1] == '/' || pRelStart[1] == '\\')) {
- pRelStart += 2;
- } else if (pRelStart + 2 < pRelEnd && pRelStart[1] == '.' &&
- (pRelStart[2] == '/' || pRelStart[2] == '\\')) {
- pRelStart += 3;
- nBackCount++;
- } else {
- return FALSE;
- }
- }
- const FX_WCHAR* pBaseStart = wsBasePath.GetPtr();
- const FX_WCHAR* pBaseEnd = pBaseStart + wsBasePath.GetLength();
- while (pBaseStart < (--pBaseEnd) && *pBaseEnd != '/' && *pBaseEnd != '\\')
- ;
- if (pBaseStart == pBaseEnd) {
- wsAbsolutePath = CFX_WideStringC(pRelStart, pRelEnd - pRelStart);
- return wsAbsolutePath.GetLength() > 0;
- }
- while (nBackCount > 0) {
- if (pBaseStart >= (--pBaseEnd)) {
- return FALSE;
- } else if (*pBaseEnd == '/' || *pBaseEnd == '\\')
- if ((--nBackCount) <= 0) {
- break;
- }
- }
- wsAbsolutePath =
- CFX_WideString(CFX_WideStringC(pBaseStart, pBaseEnd - pBaseStart + 1),
- CFX_WideStringC(pRelStart, pRelEnd - pRelStart));
- return wsAbsolutePath.GetLength() > 0;
-}
-#ifdef __cplusplus
-};
-#endif
diff --git a/xfa/src/fgas/src/crt/fx_utils.cpp b/xfa/src/fgas/src/crt/fx_utils.cpp
index 470abf4319..8f43d4474b 100644
--- a/xfa/src/fgas/src/crt/fx_utils.cpp
+++ b/xfa/src/fgas/src/crt/fx_utils.cpp
@@ -88,8 +88,8 @@ int32_t CFX_BaseArray::Append(const CFX_BaseArray& src,
}
uint8_t* pDst = m_pData->pBuffer + iBlockCount * iBlockSize;
AddSpaceTo(iBlockCount + iCount - 1);
- FX_memcpy(pDst, src.m_pData->pBuffer + iStart * iBlockSize,
- iCount * iBlockSize);
+ FXSYS_memcpy(pDst, src.m_pData->pBuffer + iStart * iBlockSize,
+ iCount * iBlockSize);
return iCount;
}
int32_t CFX_BaseArray::Copy(const CFX_BaseArray& src,
@@ -110,8 +110,8 @@ int32_t CFX_BaseArray::Copy(const CFX_BaseArray& src,
}
RemoveAll(TRUE);
AddSpaceTo(iCount - 1);
- FX_memcpy(m_pData->pBuffer, src.m_pData->pBuffer + iStart * iBlockSize,
- iCount * iBlockSize);
+ FXSYS_memcpy(m_pData->pBuffer, src.m_pData->pBuffer + iStart * iBlockSize,
+ iCount * iBlockSize);
return iCount;
}
int32_t CFX_BaseArray::RemoveLast(int32_t iCount) {