[Geany-devel] backup pref - Re: Changed file saving implementation for systems with GIO
elextr at xxxxx
Thu Nov 18 23:14:28 UTC 2010
And this time with the attachment :-S
On 19 November 2010 08:20, Lex Trotman <elextr at gmail.com> wrote:
> On 19 November 2010 06:04, Nick Treleaven <nick.treleaven at btinternet.com> wrote:
>> On Mon, 15 Nov 2010 08:57:51 +1100
>> Lex Trotman <elextr at gmail.com> wrote:
>>> >> > Also, g_file_replace_contents does have a make_backup argument we could
>>> >> > provide an option for. This might handle the disk exhaustion problem.
>>> >> To summarise the long thread for you Nick, g_file_replace_contents and
>>> >> g_file_replace can't be used because there is NO WAY to stop
>>> >> g_stream_close doing the rename of the temp file over the old file
>>> >> even if the write to the temp file fails. So you can get a broken
>>> >> output file.
>>> > I know. But at the least the user has the backup file then.
>>> Attached is a patch to actually make the backup :-)
>> Ok. We do have some backup functionality in the Save Actions plugin,
>> but anyway this pref may be more efficient.
> Yes, save actions is fine on a local disk and much more flexible since
> you can choose name and location for backups, but it copies the file
> which is a performance problem for remote filesystems which was one of
> the initiating complaints on the long "safe file save" thread IIRC.
>> I think either:
>> 1. unsafe_save_backup should be renamed to gio_unsafe_save_backup to
>> avoid confusion.
> Ok, attached.
>> 2. call the pref make_backup and make it work for all save
>> implementations, and maybe have a GUI option for it.
> To do this we would almost be writing the whole of GIO with the
> algorithm I outlined previously. So we probably should do that
> instead. For now lets just offer this easy option that provides
> improved performance on remote filesystems.
>> Geany-devel mailing list
>> Geany-devel at uvena.de
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 2122 bytes
Desc: not available
More information about the Devel