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 3 // found in the LICENSE file. 4 5 #include "sync/util/get_session_name_win.h" 6 7 #include "base/logging.h" 8 #include "base/macros.h" 9 #include "base/strings/utf_string_conversions.h" 10 11 #include <windows.h> 12 13 namespace syncer { 14 namespace internal { 15 16 std::string GetComputerName() { 17 wchar_t computer_name[MAX_COMPUTERNAME_LENGTH + 1] = {0}; 18 DWORD size = arraysize(computer_name); 19 if (::GetComputerNameW(computer_name, &size)) { 20 std::string result; 21 bool conversion_successful = base::WideToUTF8(computer_name, size, &result); 22 DCHECK(conversion_successful); 23 return result; 24 } 25 return std::string(); 26 } 27 28 } // namespace internal 29 } // namespace syncer 30