[server] Fix incorrect pointer assignment in collection file map

This commit is contained in:
Neeraj Gupta 2024-04-20 12:21:44 +05:30
parent fbf8b61891
commit ca7b03e945

View file

@ -66,8 +66,9 @@ func (fc *FileCopyController) CopyFiles(c *gin.Context, req ente.CopyFileSyncReq
}
fileIDs := req.FileIDs()
fileToCollectionFileMap := make(map[int64]*ente.CollectionFileItem, len(req.CollectionFileItems))
for _, collectionFileItem := range req.CollectionFileItems {
fileToCollectionFileMap[collectionFileItem.ID] = &collectionFileItem
for i, _ := range req.CollectionFileItems {
item := &req.CollectionFileItems[i]
fileToCollectionFileMap[item.ID] = item
}
s3ObjectsToCopy, err := fc.ObjectRepo.GetObjectsForFileIDs(fileIDs)
if err != nil {
@ -115,7 +116,12 @@ func (fc *FileCopyController) CopyFiles(c *gin.Context, req ente.CopyFileSyncReq
}
}
fileCopyList := make([]fileCopyInternal, 0, len(existingFilesToCopy))
for _, file := range existingFilesToCopy {
for i, _ := range existingFilesToCopy {
file := existingFilesToCopy[i]
collectionItem := fileToCollectionFileMap[file.ID]
if collectionItem.ID != file.ID {
return nil, ente.NewInternalError(fmt.Sprintf("expected collectionItem.ID %d, got %d", file.ID, collectionItem.ID))
}
fileCopy := fileCopyInternal{
SourceFile: file,
DestCollectionID: req.DstCollection,