Merge pull request #485 from deltachat/really-fix-477

do not panic on bad-utf-8
This commit is contained in:
björn petersen
2019-09-11 20:14:48 +02:00
committed by GitHub

View File

@@ -251,7 +251,7 @@ pub unsafe fn dc_mimeparser_parse<'a>(context: &'a Context, body: &[u8]) -> dc_m
msg_c,
);
free(msg_c.cast());
part.msg = Some(to_string(new_txt));
part.msg = Some(to_string_lossy(new_txt));
free(new_txt.cast());
break;
}
@@ -1108,7 +1108,7 @@ unsafe fn dc_mimeparser_add_single_part_if_known(
part.msg_raw = {
let raw_c =
strndup(decoded_data, decoded_data_bytes as libc::c_ulong);
let raw = to_string(raw_c);
let raw = to_string_lossy(raw_c);
free(raw_c.cast());
Some(raw)
};
@@ -1166,7 +1166,7 @@ unsafe fn dc_mimeparser_add_single_part_if_known(
9,
) == 0i32
{
filename_parts += &to_string(
filename_parts += &to_string_lossy(
(*(*dsp_param).pa_data.pa_parameter).pa_value,
);
} else if (*dsp_param).pa_type
@@ -1640,7 +1640,7 @@ pub unsafe fn dc_mimeparser_repl_msg_by_error(
}
let part = &mut mimeparser.parts[0];
part.type_0 = Viewtype::Text;
part.msg = Some(format!("[{}]", to_string(error_msg)));
part.msg = Some(format!("[{}]", to_string_lossy(error_msg)));
mimeparser.parts.truncate(1);
assert_eq!(mimeparser.parts.len(), 1);
}