]> Untitled Git - lemmy.git/commitdiff
Fixed an issue with blocked post creators in outbox.
authorDessalines <tyhou13@gmx.com>
Fri, 9 Oct 2020 17:46:27 +0000 (12:46 -0500)
committerDessalines <tyhou13@gmx.com>
Fri, 9 Oct 2020 17:46:27 +0000 (12:46 -0500)
- Fixes #1186

lemmy_apub/src/activity_queue.rs
lemmy_apub/src/fetcher.rs

index 988f1a477ecedcc3eecca981fab59bc28fb03038..0e018c8d829037f8c8669efe755b56468e878f0f 100644 (file)
@@ -189,10 +189,6 @@ where
     return Ok(());
   }
 
-  for to_url in &to {
-    check_is_apub_id_valid(&to_url)?;
-  }
-
   let activity = activity.into_any_base()?;
   let serialised_activity = serde_json::to_string(&activity)?;
 
index 226569f674d7842145709ceb5fa6a13ad567454a..58b6a1bf50e9d49482669000bce350686c099dbe 100644 (file)
@@ -338,7 +338,13 @@ async fn fetch_remote_community(
   }
   for o in outbox_items {
     let page = PageExt::from_any_base(o)?.context(location_info!())?;
-    let post = PostForm::from_apub(&page, context, None).await?;
+
+    // The post creator may be from a blocked instance,
+    // if it errors, then continue
+    let post = match PostForm::from_apub(&page, context, None).await {
+      Ok(post) => post,
+      Err(_) => continue,
+    };
     let post_ap_id = post.ap_id.as_ref().context(location_info!())?.clone();
     // Check whether the post already exists in the local db
     let existing = blocking(context.pool(), move |conn| {