| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium 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 // This file defines utility functions for working with strings. | 5 // This file defines utility functions for working with strings. |
| 6 | 6 |
| 7 #ifndef BASE_STRINGS_STRING_UTIL_H_ | 7 #ifndef BASE_STRINGS_STRING_UTIL_H_ |
| 8 #define BASE_STRINGS_STRING_UTIL_H_ | 8 #define BASE_STRINGS_STRING_UTIL_H_ |
| 9 | 9 |
| 10 #include <ctype.h> | 10 #include <ctype.h> |
| (...skipping 28 matching lines...) Expand all Loading... |
| 39 inline int snprintf(char* buffer, size_t size, const char* format, ...) | 39 inline int snprintf(char* buffer, size_t size, const char* format, ...) |
| 40 PRINTF_FORMAT(3, 4); | 40 PRINTF_FORMAT(3, 4); |
| 41 inline int snprintf(char* buffer, size_t size, const char* format, ...) { | 41 inline int snprintf(char* buffer, size_t size, const char* format, ...) { |
| 42 va_list arguments; | 42 va_list arguments; |
| 43 va_start(arguments, format); | 43 va_start(arguments, format); |
| 44 int result = vsnprintf(buffer, size, format, arguments); | 44 int result = vsnprintf(buffer, size, format, arguments); |
| 45 va_end(arguments); | 45 va_end(arguments); |
| 46 return result; | 46 return result; |
| 47 } | 47 } |
| 48 | 48 |
| 49 // TODO(mark) http://crbug.com/472900 crashpad shouldn't use base while | |
| 50 // being DEPSed in. This backwards-compat hack is provided until crashpad is | |
| 51 // updated. | |
| 52 #if defined(OS_WIN) | |
| 53 inline int strcasecmp(const char* s1, const char* s2) { | |
| 54 return _stricmp(s1, s2); | |
| 55 } | |
| 56 #else // Posix | |
| 57 inline int strcasecmp(const char* string1, const char* string2) { | |
| 58 return ::strcasecmp(string1, string2); | |
| 59 } | |
| 60 #endif | |
| 61 | |
| 62 // BSD-style safe and consistent string copy functions. | 49 // BSD-style safe and consistent string copy functions. |
| 63 // Copies |src| to |dst|, where |dst_size| is the total allocated size of |dst|. | 50 // Copies |src| to |dst|, where |dst_size| is the total allocated size of |dst|. |
| 64 // Copies at most |dst_size|-1 characters, and always NULL terminates |dst|, as | 51 // Copies at most |dst_size|-1 characters, and always NULL terminates |dst|, as |
| 65 // long as |dst_size| is not 0. Returns the length of |src| in characters. | 52 // long as |dst_size| is not 0. Returns the length of |src| in characters. |
| 66 // If the return value is >= dst_size, then the output was truncated. | 53 // If the return value is >= dst_size, then the output was truncated. |
| 67 // NOTE: All sizes are in number of characters, NOT in bytes. | 54 // NOTE: All sizes are in number of characters, NOT in bytes. |
| 68 BASE_EXPORT size_t strlcpy(char* dst, const char* src, size_t dst_size); | 55 BASE_EXPORT size_t strlcpy(char* dst, const char* src, size_t dst_size); |
| 69 BASE_EXPORT size_t wcslcpy(wchar_t* dst, const wchar_t* src, size_t dst_size); | 56 BASE_EXPORT size_t wcslcpy(wchar_t* dst, const wchar_t* src, size_t dst_size); |
| 70 | 57 |
| 71 // Scan a wprintf format string to determine whether it's portable across a | 58 // Scan a wprintf format string to determine whether it's portable across a |
| (...skipping 394 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 466 | 453 |
| 467 #if defined(OS_WIN) | 454 #if defined(OS_WIN) |
| 468 #include "base/strings/string_util_win.h" | 455 #include "base/strings/string_util_win.h" |
| 469 #elif defined(OS_POSIX) | 456 #elif defined(OS_POSIX) |
| 470 #include "base/strings/string_util_posix.h" | 457 #include "base/strings/string_util_posix.h" |
| 471 #else | 458 #else |
| 472 #error Define string operations appropriately for your platform | 459 #error Define string operations appropriately for your platform |
| 473 #endif | 460 #endif |
| 474 | 461 |
| 475 #endif // BASE_STRINGS_STRING_UTIL_H_ | 462 #endif // BASE_STRINGS_STRING_UTIL_H_ |
| OLD | NEW |