OLD | NEW |
---|---|
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 #include "sync/util/get_session_name_win.h" | 5 #include "sync/util/get_session_name_win.h" |
6 | 6 |
7 #include "base/logging.h" | |
Nicolas Zea
2014/08/28 18:58:29
nit: can remove this?
maniscalco
2014/08/28 19:10:58
We need it since it's where DCHECK comes from.
| |
8 #include "base/macros.h" | |
9 #include "base/strings/utf_string_conversions.h" | |
10 | |
7 #include <windows.h> | 11 #include <windows.h> |
8 | 12 |
9 namespace syncer { | 13 namespace syncer { |
10 namespace internal { | 14 namespace internal { |
11 | 15 |
12 std::string GetComputerName() { | 16 std::string GetComputerName() { |
13 char computer_name[MAX_COMPUTERNAME_LENGTH + 1]; | 17 wchar_t computer_name[MAX_COMPUTERNAME_LENGTH + 1] = {0}; |
14 DWORD size = sizeof(computer_name); | 18 DWORD size = arraysize(computer_name); |
15 if (GetComputerNameA(computer_name, &size)) | 19 if (::GetComputerNameW(computer_name, &size)) { |
16 return computer_name; | 20 std::string result; |
21 bool conversion_successful = base::WideToUTF8(computer_name, size, &result); | |
22 DCHECK(conversion_successful); | |
23 return result; | |
24 } | |
17 return std::string(); | 25 return std::string(); |
18 } | 26 } |
19 | 27 |
20 } // namespace internal | 28 } // namespace internal |
21 } // namespace syncer | 29 } // namespace syncer |
OLD | NEW |