fix: encode display_name as utf16

This commit is contained in:
VC
2022-12-03 17:27:18 +01:00
parent 8d55ea69a2
commit 6af1e4c55a

View File

@@ -263,8 +263,13 @@ pub async fn profile(config: Config, bot: Option<bool>) {
.user .user
.ok_or_else(|| ScootalooError::new("No user in Tweet!"))?; .ok_or_else(|| ScootalooError::new("No user in Tweet!"))?;
let mut display_name = twitter_user.name.clone(); let display_name = Some(String::from_utf16_lossy(
display_name.truncate(30); &twitter_user
.name
.encode_utf16()
.take(30)
.collect::<Vec<u16>>(),
));
let header = match twitter_user.profile_banner_url { let header = match twitter_user.profile_banner_url {
Some(h) => Some(base64_media(&h).await?), Some(h) => Some(base64_media(&h).await?),
@@ -274,7 +279,7 @@ pub async fn profile(config: Config, bot: Option<bool>) {
let update_creds = UpdateCredentialsInputOptions { let update_creds = UpdateCredentialsInputOptions {
discoverable: None, discoverable: None,
bot, bot,
display_name: Some(display_name), display_name,
note: twitter_user.description, note: twitter_user.description,
avatar: Some( avatar: Some(
base64_media(&twitter_user.profile_image_url_https.replace("_normal", "")) base64_media(&twitter_user.profile_image_url_https.replace("_normal", ""))