| OLD | NEW |
| 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 #include "components/autofill/core/browser/autofill_field.h" | 5 #include "components/autofill/core/browser/autofill_field.h" |
| 6 | 6 |
| 7 #include "base/logging.h" | 7 #include "base/logging.h" |
| 8 #include "base/sha1.h" | 8 #include "base/sha1.h" |
| 9 #include "base/strings/string_number_conversions.h" | 9 #include "base/strings/string_number_conversions.h" |
| 10 #include "base/strings/string_split.h" | 10 #include "base/strings/string_split.h" |
| (...skipping 273 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 284 | 284 |
| 285 // Fills |field| with the street address in |value|. Translates newlines into | 285 // Fills |field| with the street address in |value|. Translates newlines into |
| 286 // equivalent separators when necessary, i.e. when filling a single-line field. | 286 // equivalent separators when necessary, i.e. when filling a single-line field. |
| 287 void FillStreetAddress(const base::string16& value, | 287 void FillStreetAddress(const base::string16& value, |
| 288 FormFieldData* field) { | 288 FormFieldData* field) { |
| 289 if (field->form_control_type == "textarea") { | 289 if (field->form_control_type == "textarea") { |
| 290 field->value = value; | 290 field->value = value; |
| 291 return; | 291 return; |
| 292 } | 292 } |
| 293 | 293 |
| 294 base::string16 one_line_value; | 294 const base::string16& separator = |
| 295 const base::char16 kNewline[] = { '\n', 0 }; | |
| 296 const base::string16 separator = | |
| 297 l10n_util::GetStringUTF16(IDS_AUTOFILL_ADDRESS_LINE_SEPARATOR); | 295 l10n_util::GetStringUTF16(IDS_AUTOFILL_ADDRESS_LINE_SEPARATOR); |
| 298 base::ReplaceChars(value, kNewline, separator, &one_line_value); | 296 base::ReplaceChars(value, base::ASCIIToUTF16("\n"), separator, &field->value); |
| 299 field->value = one_line_value; | |
| 300 } | 297 } |
| 301 | 298 |
| 302 std::string Hash32Bit(const std::string& str) { | 299 std::string Hash32Bit(const std::string& str) { |
| 303 std::string hash_bin = base::SHA1HashString(str); | 300 std::string hash_bin = base::SHA1HashString(str); |
| 304 DCHECK_EQ(20U, hash_bin.length()); | 301 DCHECK_EQ(20U, hash_bin.length()); |
| 305 | 302 |
| 306 uint32 hash32 = ((hash_bin[0] & 0xFF) << 24) | | 303 uint32 hash32 = ((hash_bin[0] & 0xFF) << 24) | |
| 307 ((hash_bin[1] & 0xFF) << 16) | | 304 ((hash_bin[1] & 0xFF) << 16) | |
| 308 ((hash_bin[2] & 0xFF) << 8) | | 305 ((hash_bin[2] & 0xFF) << 8) | |
| 309 (hash_bin[3] & 0xFF); | 306 (hash_bin[3] & 0xFF); |
| (...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 407 } else if (type.GetStorableType() == ADDRESS_HOME_STREET_ADDRESS) { | 404 } else if (type.GetStorableType() == ADDRESS_HOME_STREET_ADDRESS) { |
| 408 FillStreetAddress(value, field_data); | 405 FillStreetAddress(value, field_data); |
| 409 return true; | 406 return true; |
| 410 } | 407 } |
| 411 | 408 |
| 412 field_data->value = value; | 409 field_data->value = value; |
| 413 return true; | 410 return true; |
| 414 } | 411 } |
| 415 | 412 |
| 416 } // namespace autofill | 413 } // namespace autofill |
| OLD | NEW |