Problem: When root edits a file the undo file is owned by root while the
edited file may be owned by another user, which is not allowed.
(cac2s)
Solution: Accept an undo file owned by the current user.
#ifdef UNIX
/* For safety we only read an undo file if the owner is equal to the
- * owner of the text file. */
+ * owner of the text file or equal to the current user. */
if (mch_stat((char *)orig_name, &st_orig) >= 0
&& mch_stat((char *)file_name, &st_undo) >= 0
- && st_orig.st_uid != st_undo.st_uid)
+ && st_orig.st_uid != st_undo.st_uid
+ && st_undo.st_uid != getuid())
{
if (p_verbose > 0)
{
static int included_patches[] =
{ /* Add new patch number below this line */
+/**/
+ 24,
/**/
23,
/**/