| Index: chrome/browser/sync/glue/session_model_associator_mac.mm
|
| ===================================================================
|
| --- chrome/browser/sync/glue/session_model_associator_mac.mm (revision 99393)
|
| +++ chrome/browser/sync/glue/session_model_associator_mac.mm (working copy)
|
| @@ -1,52 +0,0 @@
|
| -// Copyright (c) 2011 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -#include "chrome/browser/sync/glue/session_model_associator.h"
|
| -
|
| -#import <Foundation/Foundation.h>
|
| -#import <SystemConfiguration/SCDynamicStoreCopySpecific.h>
|
| -#include <sys/sysctl.h> // sysctlbyname()
|
| -
|
| -#include "base/mac/foundation_util.h"
|
| -#include "base/mac/mac_util.h"
|
| -#include "base/memory/scoped_nsobject.h"
|
| -#include "base/string_util.h"
|
| -#include "base/sys_info.h"
|
| -#include "base/sys_string_conversions.h"
|
| -
|
| -@interface NSHost(SnowLeopardAPI)
|
| -- (NSString*)localizedName;
|
| -@end
|
| -
|
| -namespace browser_sync {
|
| -
|
| -// Static
|
| -std::string SessionModelAssociator::GetHardwareModelName() {
|
| - NSHost* myHost = [NSHost currentHost];
|
| - if ([myHost respondsToSelector:@selector(localizedName)]) {
|
| - return base::SysNSStringToUTF8([myHost localizedName]);
|
| - }
|
| - // Fallback for 10.5
|
| - scoped_nsobject<NSString> computerName(base::mac::CFToNSCast(
|
| - SCDynamicStoreCopyComputerName(NULL, NULL)));
|
| - if (computerName.get() != NULL) {
|
| - return base::SysNSStringToUTF8(computerName.get());
|
| - }
|
| -
|
| - // If all else fails, return to using a slightly nicer version of the
|
| - // hardware model.
|
| - char modelBuffer[256];
|
| - size_t length = sizeof(modelBuffer);
|
| - if (!sysctlbyname("hw.model", modelBuffer, &length, NULL, 0)) {
|
| - for (size_t i = 0; i < length; i++) {
|
| - if (IsAsciiDigit(modelBuffer[i])) {
|
| - return std::string(modelBuffer, 0, i);
|
| - }
|
| - }
|
| - return std::string(modelBuffer, 0, length);
|
| - }
|
| - return "Unknown";
|
| -}
|
| -
|
| -} // namespace browser_sync
|
|
|