From 1c1555dc3f2ded65b1a279d807a143e712ecd93e Mon Sep 17 00:00:00 2001 From: dmazzoni Date: Wed, 24 Jun 2015 13:36:20 -0700 Subject: [PATCH] Use String16 when computing substrings to handle multibyte correctly. BUG=432974 Review URL: https://codereview.chromium.org/1189173006 Cr-Commit-Position: refs/heads/master@{#335992} --- content/browser/accessibility/browser_accessibility_cocoa.mm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/content/browser/accessibility/browser_accessibility_cocoa.mm b/content/browser/accessibility/browser_accessibility_cocoa.mm index b2fef331528f..c76d2c4cf20f 100644 --- a/content/browser/accessibility/browser_accessibility_cocoa.mm +++ b/content/browser/accessibility/browser_accessibility_cocoa.mm @@ -1383,9 +1383,9 @@ bool InitializeAccessibilityTreeSearch( return [NSNumber numberWithInt:static_cast(line_breaks.size())]; } if ([attribute isEqualToString:NSAccessibilitySelectedTextAttribute]) { - std::string value = browserAccessibility_->GetStringAttribute( + base::string16 value = browserAccessibility_->GetString16Attribute( ui::AX_ATTR_VALUE); - return base::SysUTF8ToNSString(value.substr(selStart, selLength)); + return base::SysUTF16ToNSString(value.substr(selStart, selLength)); } if ([attribute isEqualToString:NSAccessibilitySelectedTextRangeAttribute]) { return [NSValue valueWithRange:NSMakeRange(selStart, selLength)]; @@ -1411,9 +1411,9 @@ bool InitializeAccessibilityTreeSearch( if ([attribute isEqualToString: NSAccessibilityStringForRangeParameterizedAttribute]) { NSRange range = [(NSValue*)parameter rangeValue]; - std::string value = browserAccessibility_->GetStringAttribute( + base::string16 value = browserAccessibility_->GetString16Attribute( ui::AX_ATTR_VALUE); - return base::SysUTF8ToNSString(value.substr(range.location, range.length)); + return base::SysUTF16ToNSString(value.substr(range.location, range.length)); } if ([attribute isEqualToString: -- 2.11.4.GIT