You've already forked Nano-Banana-AI-Image-Editor
问题修复
This commit is contained in:
@@ -637,8 +637,25 @@ export const useAppStore = create<AppState>()(
|
||||
const isUsedInUploads = state.uploadedImages.includes(url);
|
||||
const isUsedInEdits = state.editReferenceImages.includes(url);
|
||||
|
||||
// 检查是否是历史记录中的参考图像
|
||||
const isUsedAsReference = state.currentProject && (
|
||||
state.currentProject.generations.some(gen =>
|
||||
gen.sourceAssets.some(asset => asset.blobUrl === url)
|
||||
) ||
|
||||
state.currentProject.edits.some(edit =>
|
||||
(edit.maskReferenceAssetBlobUrl === url)
|
||||
)
|
||||
);
|
||||
|
||||
// 检查是否是当前编辑操作中的参考图像
|
||||
const isUsedInCurrentEdit = state.editReferenceImages.includes(url);
|
||||
|
||||
// 检查是否是当前生成操作中的参考图像
|
||||
const isUsedInCurrentGeneration = state.uploadedImages.includes(url);
|
||||
|
||||
// 如果Blob没有被使用,则清理它
|
||||
if (!isUsedInProject && !isUsedInCanvas && !isUsedInUploads && !isUsedInEdits) {
|
||||
// 但保留仍在作为参考图像使用的Blob
|
||||
if (!isUsedInProject && !isUsedInCanvas && !isUsedInUploads && !isUsedInEdits && !isUsedAsReference && !isUsedInCurrentEdit && !isUsedInCurrentGeneration) {
|
||||
URL.revokeObjectURL(url);
|
||||
const newBlobStore = new Map(state.blobStore);
|
||||
newBlobStore.delete(url);
|
||||
|
||||
Reference in New Issue
Block a user