Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(118)

Side by Side Diff: core/fxcrt/fx_extension.cpp

Issue 1832173003: Remove FX_DWORD from core/ and delete definition (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: Created 4 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « core/fxcrt/fx_bidi.cpp ('k') | core/fxcrt/fx_ucddata.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 PDFium Authors. All rights reserved. 1 // Copyright 2014 PDFium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
6 6
7 #include "core/fxcrt/extension.h" 7 #include "core/fxcrt/extension.h"
8 #include "core/fxcrt/include/fx_basic.h" 8 #include "core/fxcrt/include/fx_basic.h"
9 #include "core/fxcrt/include/fx_ext.h" 9 #include "core/fxcrt/include/fx_ext.h"
10 10
(...skipping 11 matching lines...) Expand all
22 m_pFile->Release(); 22 m_pFile->Release();
23 } 23 }
24 } 24 }
25 25
26 IFX_FileStream* CFX_CRTFileStream::Retain() { 26 IFX_FileStream* CFX_CRTFileStream::Retain() {
27 m_dwCount++; 27 m_dwCount++;
28 return this; 28 return this;
29 } 29 }
30 30
31 void CFX_CRTFileStream::Release() { 31 void CFX_CRTFileStream::Release() {
32 FX_DWORD nCount = --m_dwCount; 32 uint32_t nCount = --m_dwCount;
33 if (!nCount) { 33 if (!nCount) {
34 delete this; 34 delete this;
35 } 35 }
36 } 36 }
37 37
38 FX_FILESIZE CFX_CRTFileStream::GetSize() { 38 FX_FILESIZE CFX_CRTFileStream::GetSize() {
39 return m_pFile->GetSize(); 39 return m_pFile->GetSize();
40 } 40 }
41 41
42 FX_BOOL CFX_CRTFileStream::IsEOF() { 42 FX_BOOL CFX_CRTFileStream::IsEOF() {
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
75 CFX_CRTFileAccess* pFA = NULL; 75 CFX_CRTFileAccess* pFA = NULL;
76 pFA = new CFX_CRTFileAccess; 76 pFA = new CFX_CRTFileAccess;
77 if (NULL == pFA) 77 if (NULL == pFA)
78 return NULL; 78 return NULL;
79 79
80 pFA->Init(wsPath); 80 pFA->Init(wsPath);
81 return pFA; 81 return pFA;
82 } 82 }
83 #endif // PDF_ENABLE_XFA 83 #endif // PDF_ENABLE_XFA
84 84
85 IFX_FileStream* FX_CreateFileStream(const FX_CHAR* filename, FX_DWORD dwModes) { 85 IFX_FileStream* FX_CreateFileStream(const FX_CHAR* filename, uint32_t dwModes) {
86 IFXCRT_FileAccess* pFA = FXCRT_FileAccess_Create(); 86 IFXCRT_FileAccess* pFA = FXCRT_FileAccess_Create();
87 if (!pFA) { 87 if (!pFA) {
88 return NULL; 88 return NULL;
89 } 89 }
90 if (!pFA->Open(filename, dwModes)) { 90 if (!pFA->Open(filename, dwModes)) {
91 pFA->Release(); 91 pFA->Release();
92 return NULL; 92 return NULL;
93 } 93 }
94 return new CFX_CRTFileStream(pFA); 94 return new CFX_CRTFileStream(pFA);
95 } 95 }
96 IFX_FileStream* FX_CreateFileStream(const FX_WCHAR* filename, 96 IFX_FileStream* FX_CreateFileStream(const FX_WCHAR* filename,
97 FX_DWORD dwModes) { 97 uint32_t dwModes) {
98 IFXCRT_FileAccess* pFA = FXCRT_FileAccess_Create(); 98 IFXCRT_FileAccess* pFA = FXCRT_FileAccess_Create();
99 if (!pFA) { 99 if (!pFA) {
100 return NULL; 100 return NULL;
101 } 101 }
102 if (!pFA->Open(filename, dwModes)) { 102 if (!pFA->Open(filename, dwModes)) {
103 pFA->Release(); 103 pFA->Release();
104 return NULL; 104 return NULL;
105 } 105 }
106 return new CFX_CRTFileStream(pFA); 106 return new CFX_CRTFileStream(pFA);
107 } 107 }
(...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after
210 FX_CHAR ch1 = 0, ch2 = 0; 210 FX_CHAR ch1 = 0, ch2 = 0;
211 while (count-- > 0) { 211 while (count-- > 0) {
212 ch1 = (FX_CHAR)FXSYS_tolower(*s1++); 212 ch1 = (FX_CHAR)FXSYS_tolower(*s1++);
213 ch2 = (FX_CHAR)FXSYS_tolower(*s2++); 213 ch2 = (FX_CHAR)FXSYS_tolower(*s2++);
214 if (ch1 != ch2) { 214 if (ch1 != ch2) {
215 break; 215 break;
216 } 216 }
217 } 217 }
218 return ch1 - ch2; 218 return ch1 - ch2;
219 } 219 }
220 FX_DWORD FX_HashCode_String_GetA(const FX_CHAR* pStr, 220 uint32_t FX_HashCode_String_GetA(const FX_CHAR* pStr,
221 int32_t iLength, 221 int32_t iLength,
222 FX_BOOL bIgnoreCase) { 222 FX_BOOL bIgnoreCase) {
223 FXSYS_assert(pStr); 223 FXSYS_assert(pStr);
224 if (iLength < 0) { 224 if (iLength < 0) {
225 iLength = (int32_t)FXSYS_strlen(pStr); 225 iLength = (int32_t)FXSYS_strlen(pStr);
226 } 226 }
227 const FX_CHAR* pStrEnd = pStr + iLength; 227 const FX_CHAR* pStrEnd = pStr + iLength;
228 FX_DWORD dwHashCode = 0; 228 uint32_t dwHashCode = 0;
229 if (bIgnoreCase) { 229 if (bIgnoreCase) {
230 while (pStr < pStrEnd) { 230 while (pStr < pStrEnd) {
231 dwHashCode = 31 * dwHashCode + FXSYS_tolower(*pStr++); 231 dwHashCode = 31 * dwHashCode + FXSYS_tolower(*pStr++);
232 } 232 }
233 } else { 233 } else {
234 while (pStr < pStrEnd) { 234 while (pStr < pStrEnd) {
235 dwHashCode = 31 * dwHashCode + *pStr++; 235 dwHashCode = 31 * dwHashCode + *pStr++;
236 } 236 }
237 } 237 }
238 return dwHashCode; 238 return dwHashCode;
239 } 239 }
240 FX_DWORD FX_HashCode_String_GetW(const FX_WCHAR* pStr, 240 uint32_t FX_HashCode_String_GetW(const FX_WCHAR* pStr,
241 int32_t iLength, 241 int32_t iLength,
242 FX_BOOL bIgnoreCase) { 242 FX_BOOL bIgnoreCase) {
243 FXSYS_assert(pStr); 243 FXSYS_assert(pStr);
244 if (iLength < 0) { 244 if (iLength < 0) {
245 iLength = (int32_t)FXSYS_wcslen(pStr); 245 iLength = (int32_t)FXSYS_wcslen(pStr);
246 } 246 }
247 const FX_WCHAR* pStrEnd = pStr + iLength; 247 const FX_WCHAR* pStrEnd = pStr + iLength;
248 FX_DWORD dwHashCode = 0; 248 uint32_t dwHashCode = 0;
249 if (bIgnoreCase) { 249 if (bIgnoreCase) {
250 while (pStr < pStrEnd) { 250 while (pStr < pStrEnd) {
251 dwHashCode = 1313 * dwHashCode + FXSYS_tolower(*pStr++); 251 dwHashCode = 1313 * dwHashCode + FXSYS_tolower(*pStr++);
252 } 252 }
253 } else { 253 } else {
254 while (pStr < pStrEnd) { 254 while (pStr < pStrEnd) {
255 dwHashCode = 1313 * dwHashCode + *pStr++; 255 dwHashCode = 1313 * dwHashCode + *pStr++;
256 } 256 }
257 } 257 }
258 return dwHashCode; 258 return dwHashCode;
259 } 259 }
260 260
261 void* FX_Random_MT_Start(FX_DWORD dwSeed) { 261 void* FX_Random_MT_Start(uint32_t dwSeed) {
262 FX_MTRANDOMCONTEXT* pContext = FX_Alloc(FX_MTRANDOMCONTEXT, 1); 262 FX_MTRANDOMCONTEXT* pContext = FX_Alloc(FX_MTRANDOMCONTEXT, 1);
263 pContext->mt[0] = dwSeed; 263 pContext->mt[0] = dwSeed;
264 FX_DWORD& i = pContext->mti; 264 uint32_t& i = pContext->mti;
265 FX_DWORD* pBuf = pContext->mt; 265 uint32_t* pBuf = pContext->mt;
266 for (i = 1; i < MT_N; i++) { 266 for (i = 1; i < MT_N; i++) {
267 pBuf[i] = (1812433253UL * (pBuf[i - 1] ^ (pBuf[i - 1] >> 30)) + i); 267 pBuf[i] = (1812433253UL * (pBuf[i - 1] ^ (pBuf[i - 1] >> 30)) + i);
268 } 268 }
269 pContext->bHaveSeed = TRUE; 269 pContext->bHaveSeed = TRUE;
270 return pContext; 270 return pContext;
271 } 271 }
272 FX_DWORD FX_Random_MT_Generate(void* pContext) { 272 uint32_t FX_Random_MT_Generate(void* pContext) {
273 FXSYS_assert(pContext); 273 FXSYS_assert(pContext);
274 FX_MTRANDOMCONTEXT* pMTC = static_cast<FX_MTRANDOMCONTEXT*>(pContext); 274 FX_MTRANDOMCONTEXT* pMTC = static_cast<FX_MTRANDOMCONTEXT*>(pContext);
275 FX_DWORD v; 275 uint32_t v;
276 static FX_DWORD mag[2] = {0, MT_Matrix_A}; 276 static uint32_t mag[2] = {0, MT_Matrix_A};
277 FX_DWORD& mti = pMTC->mti; 277 uint32_t& mti = pMTC->mti;
278 FX_DWORD* pBuf = pMTC->mt; 278 uint32_t* pBuf = pMTC->mt;
279 if ((int)mti < 0 || mti >= MT_N) { 279 if ((int)mti < 0 || mti >= MT_N) {
280 if (mti > MT_N && !pMTC->bHaveSeed) { 280 if (mti > MT_N && !pMTC->bHaveSeed) {
281 return 0; 281 return 0;
282 } 282 }
283 FX_DWORD kk; 283 uint32_t kk;
284 for (kk = 0; kk < MT_N - MT_M; kk++) { 284 for (kk = 0; kk < MT_N - MT_M; kk++) {
285 v = (pBuf[kk] & MT_Upper_Mask) | (pBuf[kk + 1] & MT_Lower_Mask); 285 v = (pBuf[kk] & MT_Upper_Mask) | (pBuf[kk + 1] & MT_Lower_Mask);
286 pBuf[kk] = pBuf[kk + MT_M] ^ (v >> 1) ^ mag[v & 1]; 286 pBuf[kk] = pBuf[kk + MT_M] ^ (v >> 1) ^ mag[v & 1];
287 } 287 }
288 for (; kk < MT_N - 1; kk++) { 288 for (; kk < MT_N - 1; kk++) {
289 v = (pBuf[kk] & MT_Upper_Mask) | (pBuf[kk + 1] & MT_Lower_Mask); 289 v = (pBuf[kk] & MT_Upper_Mask) | (pBuf[kk + 1] & MT_Lower_Mask);
290 pBuf[kk] = pBuf[kk + (MT_M - MT_N)] ^ (v >> 1) ^ mag[v & 1]; 290 pBuf[kk] = pBuf[kk + (MT_M - MT_N)] ^ (v >> 1) ^ mag[v & 1];
291 } 291 }
292 v = (pBuf[MT_N - 1] & MT_Upper_Mask) | (pBuf[0] & MT_Lower_Mask); 292 v = (pBuf[MT_N - 1] & MT_Upper_Mask) | (pBuf[0] & MT_Lower_Mask);
293 pBuf[MT_N - 1] = pBuf[MT_M - 1] ^ (v >> 1) ^ mag[v & 1]; 293 pBuf[MT_N - 1] = pBuf[MT_M - 1] ^ (v >> 1) ^ mag[v & 1];
294 mti = 0; 294 mti = 0;
295 } 295 }
296 v = pBuf[mti++]; 296 v = pBuf[mti++];
297 v ^= (v >> 11); 297 v ^= (v >> 11);
298 v ^= (v << 7) & 0x9d2c5680UL; 298 v ^= (v << 7) & 0x9d2c5680UL;
299 v ^= (v << 15) & 0xefc60000UL; 299 v ^= (v << 15) & 0xefc60000UL;
300 v ^= (v >> 18); 300 v ^= (v >> 18);
301 return v; 301 return v;
302 } 302 }
303 void FX_Random_MT_Close(void* pContext) { 303 void FX_Random_MT_Close(void* pContext) {
304 FXSYS_assert(pContext); 304 FXSYS_assert(pContext);
305 FX_Free(pContext); 305 FX_Free(pContext);
306 } 306 }
307 void FX_Random_GenerateMT(FX_DWORD* pBuffer, int32_t iCount) { 307 void FX_Random_GenerateMT(uint32_t* pBuffer, int32_t iCount) {
308 FX_DWORD dwSeed; 308 uint32_t dwSeed;
309 #if _FXM_PLATFORM_ == _FXM_PLATFORM_WINDOWS_ 309 #if _FXM_PLATFORM_ == _FXM_PLATFORM_WINDOWS_
310 if (!FX_GenerateCryptoRandom(&dwSeed, 1)) { 310 if (!FX_GenerateCryptoRandom(&dwSeed, 1)) {
311 FX_Random_GenerateBase(&dwSeed, 1); 311 FX_Random_GenerateBase(&dwSeed, 1);
312 } 312 }
313 #else 313 #else
314 FX_Random_GenerateBase(&dwSeed, 1); 314 FX_Random_GenerateBase(&dwSeed, 1);
315 #endif 315 #endif
316 void* pContext = FX_Random_MT_Start(dwSeed); 316 void* pContext = FX_Random_MT_Start(dwSeed);
317 while (iCount-- > 0) { 317 while (iCount-- > 0) {
318 *pBuffer++ = FX_Random_MT_Generate(pContext); 318 *pBuffer++ = FX_Random_MT_Generate(pContext);
319 } 319 }
320 FX_Random_MT_Close(pContext); 320 FX_Random_MT_Close(pContext);
321 } 321 }
322 void FX_Random_GenerateBase(FX_DWORD* pBuffer, int32_t iCount) { 322 void FX_Random_GenerateBase(uint32_t* pBuffer, int32_t iCount) {
323 #if _FXM_PLATFORM_ == _FXM_PLATFORM_WINDOWS_ 323 #if _FXM_PLATFORM_ == _FXM_PLATFORM_WINDOWS_
324 SYSTEMTIME st1, st2; 324 SYSTEMTIME st1, st2;
325 ::GetSystemTime(&st1); 325 ::GetSystemTime(&st1);
326 do { 326 do {
327 ::GetSystemTime(&st2); 327 ::GetSystemTime(&st2);
328 } while (FXSYS_memcmp(&st1, &st2, sizeof(SYSTEMTIME)) == 0); 328 } while (FXSYS_memcmp(&st1, &st2, sizeof(SYSTEMTIME)) == 0);
329 FX_DWORD dwHash1 = 329 uint32_t dwHash1 =
330 FX_HashCode_String_GetA((const FX_CHAR*)&st1, sizeof(st1), TRUE); 330 FX_HashCode_String_GetA((const FX_CHAR*)&st1, sizeof(st1), TRUE);
331 FX_DWORD dwHash2 = 331 uint32_t dwHash2 =
332 FX_HashCode_String_GetA((const FX_CHAR*)&st2, sizeof(st2), TRUE); 332 FX_HashCode_String_GetA((const FX_CHAR*)&st2, sizeof(st2), TRUE);
333 ::srand((dwHash1 << 16) | (FX_DWORD)dwHash2); 333 ::srand((dwHash1 << 16) | (uint32_t)dwHash2);
334 #else 334 #else
335 time_t tmLast = time(NULL); 335 time_t tmLast = time(NULL);
336 time_t tmCur; 336 time_t tmCur;
337 while ((tmCur = time(NULL)) == tmLast) { 337 while ((tmCur = time(NULL)) == tmLast) {
338 continue; 338 continue;
339 } 339 }
340 340
341 ::srand((tmCur << 16) | (tmLast & 0xFFFF)); 341 ::srand((tmCur << 16) | (tmLast & 0xFFFF));
342 #endif 342 #endif
343 while (iCount-- > 0) { 343 while (iCount-- > 0) {
344 *pBuffer++ = (FX_DWORD)((::rand() << 16) | (::rand() & 0xFFFF)); 344 *pBuffer++ = (uint32_t)((::rand() << 16) | (::rand() & 0xFFFF));
345 } 345 }
346 } 346 }
347 #if _FXM_PLATFORM_ == _FXM_PLATFORM_WINDOWS_ 347 #if _FXM_PLATFORM_ == _FXM_PLATFORM_WINDOWS_
348 FX_BOOL FX_GenerateCryptoRandom(FX_DWORD* pBuffer, int32_t iCount) { 348 FX_BOOL FX_GenerateCryptoRandom(uint32_t* pBuffer, int32_t iCount) {
349 HCRYPTPROV hCP = NULL; 349 HCRYPTPROV hCP = NULL;
350 if (!::CryptAcquireContext(&hCP, NULL, NULL, PROV_RSA_FULL, 0) || !hCP) { 350 if (!::CryptAcquireContext(&hCP, NULL, NULL, PROV_RSA_FULL, 0) || !hCP) {
351 return FALSE; 351 return FALSE;
352 } 352 }
353 ::CryptGenRandom(hCP, iCount * sizeof(FX_DWORD), (uint8_t*)pBuffer); 353 ::CryptGenRandom(hCP, iCount * sizeof(uint32_t), (uint8_t*)pBuffer);
354 ::CryptReleaseContext(hCP, 0); 354 ::CryptReleaseContext(hCP, 0);
355 return TRUE; 355 return TRUE;
356 } 356 }
357 #endif 357 #endif
358 void FX_Random_GenerateCrypto(FX_DWORD* pBuffer, int32_t iCount) { 358 void FX_Random_GenerateCrypto(uint32_t* pBuffer, int32_t iCount) {
359 #if _FXM_PLATFORM_ == _FXM_PLATFORM_WINDOWS_ 359 #if _FXM_PLATFORM_ == _FXM_PLATFORM_WINDOWS_
360 FX_GenerateCryptoRandom(pBuffer, iCount); 360 FX_GenerateCryptoRandom(pBuffer, iCount);
361 #else 361 #else
362 FX_Random_GenerateBase(pBuffer, iCount); 362 FX_Random_GenerateBase(pBuffer, iCount);
363 #endif 363 #endif
364 } 364 }
365 365
366 #ifdef PDF_ENABLE_XFA 366 #ifdef PDF_ENABLE_XFA
367 void FX_GUID_CreateV4(FX_LPGUID pGUID) { 367 void FX_GUID_CreateV4(FX_LPGUID pGUID) {
368 FX_Random_GenerateMT((FX_DWORD*)pGUID, 4); 368 FX_Random_GenerateMT((uint32_t*)pGUID, 4);
369 uint8_t& b = ((uint8_t*)pGUID)[6]; 369 uint8_t& b = ((uint8_t*)pGUID)[6];
370 b = (b & 0x0F) | 0x40; 370 b = (b & 0x0F) | 0x40;
371 } 371 }
372 const FX_CHAR* gs_FX_pHexChars = "0123456789ABCDEF"; 372 const FX_CHAR* gs_FX_pHexChars = "0123456789ABCDEF";
373 void FX_GUID_ToString(FX_LPCGUID pGUID, 373 void FX_GUID_ToString(FX_LPCGUID pGUID,
374 CFX_ByteString& bsStr, 374 CFX_ByteString& bsStr,
375 FX_BOOL bSeparator) { 375 FX_BOOL bSeparator) {
376 FX_CHAR* pBuf = bsStr.GetBuffer(40); 376 FX_CHAR* pBuf = bsStr.GetBuffer(40);
377 uint8_t b; 377 uint8_t b;
378 for (int32_t i = 0; i < 16; i++) { 378 for (int32_t i = 0; i < 16; i++) {
379 b = ((const uint8_t*)pGUID)[i]; 379 b = ((const uint8_t*)pGUID)[i];
380 *pBuf++ = gs_FX_pHexChars[b >> 4]; 380 *pBuf++ = gs_FX_pHexChars[b >> 4];
381 *pBuf++ = gs_FX_pHexChars[b & 0x0F]; 381 *pBuf++ = gs_FX_pHexChars[b & 0x0F];
382 if (bSeparator && (i == 3 || i == 5 || i == 7 || i == 9)) { 382 if (bSeparator && (i == 3 || i == 5 || i == 7 || i == 9)) {
383 *pBuf++ = L'-'; 383 *pBuf++ = L'-';
384 } 384 }
385 } 385 }
386 bsStr.ReleaseBuffer(bSeparator ? 36 : 32); 386 bsStr.ReleaseBuffer(bSeparator ? 36 : 32);
387 } 387 }
388 #endif // PDF_ENABLE_XFA 388 #endif // PDF_ENABLE_XFA
OLDNEW
« no previous file with comments | « core/fxcrt/fx_bidi.cpp ('k') | core/fxcrt/fx_ucddata.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698