derf / feh

a fast and light image viewer
https://feh.finalrewind.org
Other
1.51k stars 159 forks source link

feh modifies a passed filelist #698

Open kiteloopdesign opened 1 year ago

kiteloopdesign commented 1 year ago

when passing a file with "-f" option in which the images are not listed as expected (one per line), feh decides to delete these files from the list

This is highly unexpected and dangerous behaviour, no tool should do this w/o confirmation or an extra switch (eg --edit)

avlec commented 1 year ago

This is the behaviour that is described in the man page.

Any changes to the internal filelist (such as deleting a file or it being pruned for being unloadable) will be saved to file when feh exits. You can add files to filelists by specifying them on the command line when also specifying the list.

derf commented 1 year ago

Indeed, though this issue makes me question whether this is sensible behaviour. I can understand that users would expect a filelist to remain unchanged unless they perform explicit actions to alter it.

I'll flag this as a bug for now and see how I can improve this.

avlec commented 1 year ago

One option that comes to mind that preserves existing behaviour is to chmod the file to remove write access. However, I am not sure that would be an acceptable solution

kiteloopdesign commented 1 year ago

derf, avlec, thanks for the answers

IMHO, it's not a sensible behaviour for any tool to alter a file in this way. Even more being the case of a filelist, which is just a means of providing the images to feh. This is, a user may expect an image browser/editor to make changes to the images, but not to a filelist.

Not sure why you provide this behaviour that avlec quoted on his reply, but, if you want to maintain it, I would suggest to break out the -f in two different options. That or I would require a new "--allowlistedit" flag