diff options
author | 2022-02-22 13:50:33 +0100 | |
---|---|---|
committer | 2022-02-22 13:50:33 +0100 | |
commit | 55b83bea7cad893aabda4ab5e05c248fb66e1e51 (patch) | |
tree | 4f0fe25b706e5635bcdd91e6ad19324fc250760a /internal/media/processingemoji.go | |
parent | [bugfix] Fix thumbnail image type (#406) (diff) | |
download | gotosocial-55b83bea7cad893aabda4ab5e05c248fb66e1e51.tar.xz |
[feature] Add postDataCallbackFunc to allow cleanup (#408)
Diffstat (limited to 'internal/media/processingemoji.go')
-rw-r--r-- | internal/media/processingemoji.go | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/internal/media/processingemoji.go b/internal/media/processingemoji.go index 741854b9b..2a3cd1613 100644 --- a/internal/media/processingemoji.go +++ b/internal/media/processingemoji.go @@ -47,9 +47,10 @@ type ProcessingEmoji struct { emoji will be updated incrementally as media goes through processing */ - emoji *gtsmodel.Emoji - data DataFunc - read bool // bool indicating that data function has been triggered already + emoji *gtsmodel.Emoji + data DataFunc + postData PostDataCallbackFunc + read bool // bool indicating that data function has been triggered already /* below fields represent the processing state of the static of the emoji @@ -212,10 +213,15 @@ func (p *ProcessingEmoji) store(ctx context.Context) error { } p.read = true + + if p.postData != nil { + return p.postData(ctx) + } + return nil } -func (m *manager) preProcessEmoji(ctx context.Context, data DataFunc, shortcode string, id string, uri string, ai *AdditionalEmojiInfo) (*ProcessingEmoji, error) { +func (m *manager) preProcessEmoji(ctx context.Context, data DataFunc, postData PostDataCallbackFunc, shortcode string, id string, uri string, ai *AdditionalEmojiInfo) (*ProcessingEmoji, error) { instanceAccount, err := m.db.GetInstanceAccount(ctx, "") if err != nil { return nil, fmt.Errorf("preProcessEmoji: error fetching this instance account from the db: %s", err) @@ -281,6 +287,7 @@ func (m *manager) preProcessEmoji(ctx context.Context, data DataFunc, shortcode instanceAccountID: instanceAccount.ID, emoji: emoji, data: data, + postData: postData, staticState: int32(received), database: m.db, storage: m.storage, |