Re: Config file handling



Hello!

> Patch to write config to temporary file and then 'atomically' move it
> to proper place.

Thank you!

> Moreover it is a fix for following nasty bug which happens when no
> ~/.mc/ini is found:
>
> open("/usr/local/share/mc/mc.ini",
> O_WRONLY|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = -1 EACCES (Permission
> denied)
>
> We should not try to write to public files, so profile_name should be
> used only for reading... But dump_profile still wants to save file
> (even unmodified), so we check and save only in home_dir.

Not sure if it's the right fix.  Sometimes there is more that one way to
write home directory.  For example. /home is a link to /usr/home by
default on some versions of FreeBSD.

More importantly, mc shouldn't even attempt to save anything to mc.ini.
dump_profile() shouldn't be called for global files.  I think the fix
should be in some other place.

I like the idea of using stat() on the config file.  When "Auto Save
Setup" is used, the changes made manually are lost.  Maybe the
modification time should be checked.

-- 
Regards,
Pavel Roskin



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]