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

Side by Side Diff: base/strings/string_util_win.h

Issue 902643002: Revert "Enable positional parameters for base::vsnprintf and base::vswprintf on Windows." (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: extension Created 5 years, 10 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 | « no previous file | base/strings/stringprintf_unittest.cc » ('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 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 #ifndef BASE_STRINGS_STRING_UTIL_WIN_H_ 5 #ifndef BASE_STRINGS_STRING_UTIL_WIN_H_
6 #define BASE_STRINGS_STRING_UTIL_WIN_H_ 6 #define BASE_STRINGS_STRING_UTIL_WIN_H_
7 7
8 #include <stdarg.h> 8 #include <stdarg.h>
9 #include <stdio.h> 9 #include <stdio.h>
10 #include <string.h> 10 #include <string.h>
(...skipping 16 matching lines...) Expand all
27 inline int strncasecmp(const char* s1, const char* s2, size_t count) { 27 inline int strncasecmp(const char* s1, const char* s2, size_t count) {
28 return _strnicmp(s1, s2, count); 28 return _strnicmp(s1, s2, count);
29 } 29 }
30 30
31 inline int strncmp16(const char16* s1, const char16* s2, size_t count) { 31 inline int strncmp16(const char16* s1, const char16* s2, size_t count) {
32 return ::wcsncmp(s1, s2, count); 32 return ::wcsncmp(s1, s2, count);
33 } 33 }
34 34
35 inline int vsnprintf(char* buffer, size_t size, 35 inline int vsnprintf(char* buffer, size_t size,
36 const char* format, va_list arguments) { 36 const char* format, va_list arguments) {
37 int length = _vsprintf_p(buffer, size, format, arguments); 37 int length = vsnprintf_s(buffer, size, size - 1, format, arguments);
38 if (length < 0) { 38 if (length < 0)
39 if (size > 0) 39 return _vscprintf(format, arguments);
40 buffer[0] = 0;
41 return _vscprintf_p(format, arguments);
42 }
43 return length; 40 return length;
44 } 41 }
45 42
46 inline int vswprintf(wchar_t* buffer, size_t size, 43 inline int vswprintf(wchar_t* buffer, size_t size,
47 const wchar_t* format, va_list arguments) { 44 const wchar_t* format, va_list arguments) {
48 DCHECK(IsWprintfFormatPortable(format)); 45 DCHECK(IsWprintfFormatPortable(format));
49 46
50 int length = _vswprintf_p(buffer, size, format, arguments); 47 int length = _vsnwprintf_s(buffer, size, size - 1, format, arguments);
51 if (length < 0) { 48 if (length < 0)
52 if (size > 0) 49 return _vscwprintf(format, arguments);
53 buffer[0] = 0;
54 return _vscwprintf_p(format, arguments);
55 }
56 return length; 50 return length;
57 } 51 }
58 52
59 } // namespace base 53 } // namespace base
60 54
61 #endif // BASE_STRINGS_STRING_UTIL_WIN_H_ 55 #endif // BASE_STRINGS_STRING_UTIL_WIN_H_
OLDNEW
« no previous file with comments | « no previous file | base/strings/stringprintf_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698