diff options
Diffstat (limited to 'internal/media')
-rw-r--r-- | internal/media/handler.go | 10 | ||||
-rw-r--r-- | internal/media/processicon.go | 9 | ||||
-rw-r--r-- | internal/media/processimage.go | 9 |
3 files changed, 18 insertions, 10 deletions
diff --git a/internal/media/handler.go b/internal/media/handler.go index acfc823ed..0bcf46488 100644 --- a/internal/media/handler.go +++ b/internal/media/handler.go @@ -26,12 +26,12 @@ import ( "strings" "time" - "github.com/google/uuid" "github.com/sirupsen/logrus" "github.com/superseriousbusiness/gotosocial/internal/blob" "github.com/superseriousbusiness/gotosocial/internal/config" "github.com/superseriousbusiness/gotosocial/internal/db" "github.com/superseriousbusiness/gotosocial/internal/gtsmodel" + "github.com/superseriousbusiness/gotosocial/internal/id" "github.com/superseriousbusiness/gotosocial/internal/transport" ) @@ -242,9 +242,11 @@ func (mh *mediaHandler) ProcessLocalEmoji(emojiBytes []byte, shortcode string) ( // create the urls and storage paths URLbase := fmt.Sprintf("%s://%s%s", mh.config.StorageConfig.ServeProtocol, mh.config.StorageConfig.ServeHost, mh.config.StorageConfig.ServeBasePath) - // generate a uuid for the new emoji -- normally we could let the database do this for us, - // but we need it below so we should create it here instead. - newEmojiID := uuid.NewString() + // generate a id for the new emoji + newEmojiID, err := id.NewRandomULID() + if err != nil { + return nil, err + } // webfinger uri for the emoji -- unrelated to actually serving the image // will be something like https://example.org/emoji/70a7f3d7-7e35-4098-8ce3-9b5e8203bb9c diff --git a/internal/media/processicon.go b/internal/media/processicon.go index bc2c55809..5fae63198 100644 --- a/internal/media/processicon.go +++ b/internal/media/processicon.go @@ -24,8 +24,8 @@ import ( "strings" "time" - "github.com/google/uuid" "github.com/superseriousbusiness/gotosocial/internal/gtsmodel" + "github.com/superseriousbusiness/gotosocial/internal/id" ) func (mh *mediaHandler) processHeaderOrAvi(imageBytes []byte, contentType string, mediaType Type, accountID string, remoteURL string) (*gtsmodel.MediaAttachment, error) { @@ -72,9 +72,12 @@ func (mh *mediaHandler) processHeaderOrAvi(imageBytes []byte, contentType string return nil, fmt.Errorf("error deriving thumbnail: %s", err) } - // now put it in storage, take a new uuid for the name of the file so we don't store any unnecessary info about it + // now put it in storage, take a new id for the name of the file so we don't store any unnecessary info about it extension := strings.Split(contentType, "/")[1] - newMediaID := uuid.NewString() + newMediaID, err := id.NewRandomULID() + if err != nil { + return nil, err + } URLbase := fmt.Sprintf("%s://%s%s", mh.config.StorageConfig.ServeProtocol, mh.config.StorageConfig.ServeHost, mh.config.StorageConfig.ServeBasePath) originalURL := fmt.Sprintf("%s/%s/%s/original/%s.%s", URLbase, accountID, mediaType, newMediaID, extension) diff --git a/internal/media/processimage.go b/internal/media/processimage.go index dd8bff02c..d4add027a 100644 --- a/internal/media/processimage.go +++ b/internal/media/processimage.go @@ -24,8 +24,8 @@ import ( "strings" "time" - "github.com/google/uuid" "github.com/superseriousbusiness/gotosocial/internal/gtsmodel" + "github.com/superseriousbusiness/gotosocial/internal/id" ) func (mh *mediaHandler) processImageAttachment(data []byte, accountID string, contentType string, remoteURL string) (*gtsmodel.MediaAttachment, error) { @@ -58,9 +58,12 @@ func (mh *mediaHandler) processImageAttachment(data []byte, accountID string, co return nil, fmt.Errorf("error deriving thumbnail: %s", err) } - // now put it in storage, take a new uuid for the name of the file so we don't store any unnecessary info about it + // now put it in storage, take a new id for the name of the file so we don't store any unnecessary info about it extension := strings.Split(contentType, "/")[1] - newMediaID := uuid.NewString() + newMediaID, err := id.NewRandomULID() + if err != nil { + return nil, err + } URLbase := fmt.Sprintf("%s://%s%s", mh.config.StorageConfig.ServeProtocol, mh.config.StorageConfig.ServeHost, mh.config.StorageConfig.ServeBasePath) originalURL := fmt.Sprintf("%s/%s/attachment/original/%s.%s", URLbase, accountID, newMediaID, extension) |