Catch errors around Like/Unlike actions

Previously, we'd get nil panics or insert blank post IDs

Ref T906
pull/1122/head
Matt Baer 1 month ago
parent 9c0a2f8b13
commit 1b20d3704f
  1. 12
      activitypub.go

@ -392,7 +392,13 @@ func handleFetchCollectionInbox(app *App, w http.ResponseWriter, r *http.Request
}, 0) }, 0)
*/ */
if obj == nil {
return fmt.Errorf("didn't get ObjectIRI to Like")
}
likePostID, err = parsePostIDFromURL(app, obj) likePostID, err = parsePostIDFromURL(app, obj)
if err != nil {
return err
}
// Finally, get actor information // Finally, get actor information
_, from := l.GetActor(0) _, from := l.GetActor(0)
@ -458,7 +464,13 @@ func handleFetchCollectionInbox(app *App, w http.ResponseWriter, r *http.Request
_, from := like.GetActor(0) _, from := like.GetActor(0)
obj := like.Raw().GetObjectIRI(0) obj := like.Raw().GetObjectIRI(0)
if obj == nil {
return fmt.Errorf("didn't get ObjectIRI for Undo Like")
}
unlikePostID, err = parsePostIDFromURL(app, obj) unlikePostID, err = parsePostIDFromURL(app, obj)
if err != nil {
return err
}
fullActor, remoteUser, err = getActor(app, from.String()) fullActor, remoteUser, err = getActor(app, from.String())
if err != nil { if err != nil {
return err return err

Loading…
Cancel
Save