forked from tangled.org/core
Monorepo for Tangled — https://tangled.org

appview: harden spindle deletion again

Signed-off-by: oppiliappan <me@oppi.li>

oppi.li 0e7f8e82 6e820aaa

verified
Changed files
+14 -8
appview
+6 -3
appview/ingester.go
···
if err != nil || len(spindles) != 1 {
return fmt.Errorf("failed to get spindles: %w, len(spindles) = %d", err, len(spindles))
}
+
spindle := spindles[0]
tx, err := ddb.Begin()
if err != nil {
···
return err
}
-
err = i.Enforcer.RemoveSpindle(instance)
-
if err != nil {
-
return err
+
if spindle.Verified != nil {
+
err = i.Enforcer.RemoveSpindle(instance)
+
if err != nil {
+
return err
+
}
}
err = tx.Commit()
+8 -5
appview/spindles/spindles.go
···
return
}
-
err = s.Enforcer.RemoveSpindle(instance)
-
if err != nil {
-
l.Error("failed to update ACL", "err", err)
-
fail()
-
return
+
// delete from enforcer
+
if spindles[0].Verified != nil {
+
err = s.Enforcer.RemoveSpindle(instance)
+
if err != nil {
+
l.Error("failed to update ACL", "err", err)
+
fail()
+
return
+
}
}
client, err := s.OAuth.AuthorizedClient(r)