mirror of
https://github.com/mikedilger/gossip.git
synced 2024-09-29 08:21:47 +00:00
Show error on unparseable embedded note content
This commit is contained in:
parent
6c8e2c29c7
commit
3206a36047
@ -123,33 +123,43 @@ impl NoteData {
|
|||||||
mentions
|
mentions
|
||||||
};
|
};
|
||||||
|
|
||||||
let embedded_event = {
|
let (embedded_event, embedded_event_error) = {
|
||||||
if event.kind == EventKind::Repost || event.kind == EventKind::GenericRepost {
|
if event.kind == EventKind::Repost || event.kind == EventKind::GenericRepost {
|
||||||
if !event.content.trim().is_empty() {
|
if !event.content.trim().is_empty() {
|
||||||
if let Ok(embedded_event) = serde_json::from_str::<Event>(&event.content) {
|
let result = serde_json::from_str::<Event>(&event.content);
|
||||||
if event.kind == EventKind::Repost
|
if let Ok(embedded_event) = result {
|
||||||
|| (event.kind == EventKind::GenericRepost
|
if embedded_event.kind.is_feed_displayable() {
|
||||||
&& embedded_event.kind.is_feed_displayable())
|
(Some(embedded_event), None)
|
||||||
{
|
|
||||||
Some(embedded_event)
|
|
||||||
} else {
|
} else {
|
||||||
None
|
(None, {
|
||||||
|
let kind_number: u32 = embedded_event.kind.into();
|
||||||
|
Some(format!(
|
||||||
|
"ERROR EMBEDDED EVENT UNSUPPORTED KIND : {}",
|
||||||
|
kind_number
|
||||||
|
))
|
||||||
|
})
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
None
|
(
|
||||||
|
None,
|
||||||
|
Some(format!(
|
||||||
|
"ERROR PARSING EMBEDDED EVENT: '{}'",
|
||||||
|
result.err().unwrap().to_string()
|
||||||
|
)),
|
||||||
|
)
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
None
|
(None, None)
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
None
|
(None, None)
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
// Compute the content to our needs
|
// Compute the content to our needs
|
||||||
let (display_content, error_content) = match event.kind {
|
let (display_content, error_content) = match event.kind {
|
||||||
EventKind::TextNote => (event.content.trim().to_string(), None),
|
EventKind::TextNote => (event.content.trim().to_string(), None),
|
||||||
EventKind::Repost => ("".to_owned(), None),
|
EventKind::Repost => ("".to_owned(), embedded_event_error),
|
||||||
EventKind::GenericRepost => ("".to_owned(), None),
|
EventKind::GenericRepost => ("".to_owned(), None),
|
||||||
EventKind::EncryptedDirectMessage => {
|
EventKind::EncryptedDirectMessage => {
|
||||||
match GLOBALS.identity.decrypt_event_contents(&event) {
|
match GLOBALS.identity.decrypt_event_contents(&event) {
|
||||||
|
Loading…
Reference in New Issue
Block a user