diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/core/hle/service/mii/mii_manager.cpp | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/src/core/hle/service/mii/mii_manager.cpp b/src/core/hle/service/mii/mii_manager.cpp index 4bc8703e1..3a2fe938f 100644 --- a/src/core/hle/service/mii/mii_manager.cpp +++ b/src/core/hle/service/mii/mii_manager.cpp | |||
| @@ -442,8 +442,15 @@ CharInfo MiiManager::ConvertV3ToCharInfo(const Ver3StoreData& mii_v3) const { | |||
| 442 | mii.height = mii_v3.height; | 442 | mii.height = mii_v3.height; |
| 443 | mii.build = mii_v3.build; | 443 | mii.build = mii_v3.build; |
| 444 | 444 | ||
| 445 | memset(mii.name.data(), 0, mii.name.size()); | 445 | // Copy name until string terminator |
| 446 | memcpy(mii.name.data(), mii_v3.mii_name.data(), mii_v3.mii_name.size()); | 446 | mii.name = {}; |
| 447 | for (std::size_t index = 0; index < mii.name.size() - 1; index++) { | ||
| 448 | mii.name[index] = mii_v3.mii_name[index]; | ||
| 449 | if (mii.name[index] == 0) { | ||
| 450 | break; | ||
| 451 | } | ||
| 452 | } | ||
| 453 | |||
| 447 | mii.font_region = mii_v3.region_information.character_set; | 454 | mii.font_region = mii_v3.region_information.character_set; |
| 448 | 455 | ||
| 449 | mii.faceline_type = mii_v3.appearance_bits1.face_shape; | 456 | mii.faceline_type = mii_v3.appearance_bits1.face_shape; |
| @@ -515,7 +522,15 @@ Ver3StoreData MiiManager::ConvertCharInfoToV3(const CharInfo& mii) const { | |||
| 515 | mii_v3.height = mii.height; | 522 | mii_v3.height = mii.height; |
| 516 | mii_v3.build = mii.build; | 523 | mii_v3.build = mii.build; |
| 517 | 524 | ||
| 518 | memcpy(mii_v3.mii_name.data(), mii.name.data(), mii.name.size()); | 525 | // Copy name until string terminator |
| 526 | mii_v3.mii_name = {}; | ||
| 527 | for (std::size_t index = 0; index < mii.name.size() - 1; index++) { | ||
| 528 | mii_v3.mii_name[index] = mii.name[index]; | ||
| 529 | if (mii_v3.mii_name[index] == 0) { | ||
| 530 | break; | ||
| 531 | } | ||
| 532 | } | ||
| 533 | |||
| 519 | mii_v3.region_information.character_set.Assign(mii.font_region); | 534 | mii_v3.region_information.character_set.Assign(mii.font_region); |
| 520 | 535 | ||
| 521 | mii_v3.appearance_bits1.face_shape.Assign(mii.faceline_type); | 536 | mii_v3.appearance_bits1.face_shape.Assign(mii.faceline_type); |