| Summary: | Tellico saves temporary image to data directory | ||
|---|---|---|---|
| Product: | [Applications] tellico | Reporter: | louise.ripley |
| Component: | general | Assignee: | Robby Stephenson <robby> |
| Status: | RESOLVED FIXED | ||
| Severity: | normal | ||
| Priority: | NOR | ||
| Version First Reported In: | 4.1.3 | ||
| Target Milestone: | --- | ||
| Platform: | Flatpak | ||
| OS: | Linux | ||
| Latest Commit: | https://invent.kde.org/office/tellico/-/commit/ce17ab61adf9dcd8efde3a0dcbaf74e01f2d8d4f | Version Fixed/Implemented In: | 4.1.4 |
| Sentry Crash Report: | |||
Thanks for the excellent bug reports. I'm going to split this one into the three issue you identify so I can work them separately. This bug is for your first issue - erroneously saving the temporary image into the existing data directory. Bug #509244 Tellico does not clean up unused images written to disk Bug #509245 Tellico saves image in wrong directory Git commit c139d54ffa15184c10ca9314f1bc7834abb675ad by Robby Stephenson. Committed on 11/09/2025 at 21:55. Pushed by rstephenson into branch 'master'. Ensure EntryView uses temp dir for images unless otherwise directed EntryViews in the FetchDialog were saving images into the local data dir even when the entry with the image was never saved to the collection. Rather than relying on the config setting, rely on the owner of the view telling it whether to use temp dirs or not. FIXED-IN: 4.1.4 M +1 -0 ChangeLog M +1 -3 src/document.cpp M +0 -2 src/document.h M +1 -0 src/entrymatchdialog.cpp M +11 -7 src/entryview.cpp M +2 -0 src/entryview.h M +3 -0 src/mainwindow.cpp M +0 -1 src/tests/documenttest.cpp https://invent.kde.org/office/tellico/-/commit/c139d54ffa15184c10ca9314f1bc7834abb675ad Git commit ce17ab61adf9dcd8efde3a0dcbaf74e01f2d8d4f by Robby Stephenson. Committed on 12/09/2025 at 00:19. Pushed by rstephenson into branch '4.1'. Ensure EntryView uses temp dir for images unless otherwise directed EntryViews in the FetchDialog were saving images into the local data dir even when the entry with the image was never saved to the collection. Rather than relying on the config setting, rely on the owner of the view telling it whether to use temp dirs or not. FIXED-IN: 4.1.4 M +1 -0 ChangeLog M +1 -3 src/document.cpp M +0 -2 src/document.h M +1 -0 src/entrymatchdialog.cpp M +11 -7 src/entryview.cpp M +2 -0 src/entryview.h M +3 -0 src/mainwindow.cpp M +0 -1 src/tests/documenttest.cpp https://invent.kde.org/office/tellico/-/commit/ce17ab61adf9dcd8efde3a0dcbaf74e01f2d8d4f |
SUMMARY In several scenarios, Tellico writes images to disk but does not delete them when they are no longer needed. The directory containing the images grows over time, containing several unused images. STEPS TO REPRODUCE 1. Create a new book collection 2. Save the collection. For example, to the location "~/tellico/books.tc" 3. Settings => Configure Tellico...: Reopen file at startup: enable Image Storage Options: Store images in directory relative to data file 4. Save settings. Close and reopen tellico. 5. Add a book with a cover: Add entry from "Internet Search..." Search "2-84565-200-3" Search type: ISBN Search source: Open Library 6. Click on the entry without adding it to the collection. First problem: the cover is written to the location "~/tellico/books_files/" even though the book has not been added to the collection. If you close the window without adding the book, the file is not deleted. 7. Add the entry to the collection, then remove it from the collection. Second problem: when you delete an entry, the associated cover is not deleted from the location "~/tellico/books_files/". 8. Save the book collection, then create a new collection without saving it to disk: File => New Collection => New Music Collection 9. Add an album with a cover: Add entry from "Internet Search..." Search "078636633619" Search type: UPC/EAN Search source: MusicBrainz 10. Click on the entry without adding it to the collection. Third problem: The cover is written in the location of the previous collection: "~/tellico/books_files/" SOFTWARE/OS VERSIONS OS: Linux Mint 22.1 (Xia) - Cinnamon Tellico: 4.1.3 KDE Frameworks: 6.13.0 Qt: Using 6.9.0 and built against 6.9.0 KDE Flatpak runtime (Xcb) Build ABI: x86_64-little_endian-lp64 Kernel: linux 6.14.0-28-generic ADDITIONAL INFORMATION The problem also occurs with the "Store images in common application directory" setting. It is possible to delete unused images by following these steps: 1. Switch to the "Store images in data file" setting 2. Save settings. Save the collection. Close and reopen the collection. 4. Delete the directory "~/tellico/books_files/" 5. Set the parameter "Store images in a directory relative to the data file."