emacs-bug-tracker
[Top][All Lists]
Advanced

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

bug#64821: closed (30.0.50; write-region errs when overwriting an alread


From: GNU bug Tracking System
Subject: bug#64821: closed (30.0.50; write-region errs when overwriting an already open file)
Date: Tue, 25 Jul 2023 12:19:02 +0000

Your message dated Tue, 25 Jul 2023 15:19:13 +0300
with message-id <831qgwqj3y.fsf@gnu.org>
and subject line Re: bug#64821: 30.0.50; write-region errs when overwriting an 
already open file
has caused the debbugs.gnu.org bug report #64821,
regarding 30.0.50; write-region errs when overwriting an already open file
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs@gnu.org.)


-- 
64821: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=64821
GNU Bug Tracking System
Contact help-debbugs@gnu.org with problems
--- Begin Message --- Subject: 30.0.50; write-region errs when overwriting an already open file Date: Mon, 24 Jul 2023 07:12:00 +0000
Consider the following reproducer:

1. emacs -Q
2. Evaluate the following in scratch buffer

(with-temp-buffer
  (insert "test")
  (write-region nil nil "/tmp/1.txt"))

3. Open /tmp/1.txt
4. Evaluate the above sexp multiple times
5. Observe

Debugger entered--Lisp error: (wrong-type-argument stringp nil)
  expand-file-name(nil)
  userlock--check-content-unchanged("/tmp/1.txt")
  userlock--ask-user-about-supersession-threat("/tmp/1.txt")
  write-region(nil nil "/tmp/1.txt")
  (progn (insert "test") (write-region nil nil "/tmp/1.txt"))
  (unwind-protect (progn (insert "test") (write-region nil nil "/tmp/1.txt")) 
(and (buffer-name temp-buffer) (kill-buffer temp-buffer)))
  (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (insert 
"test") (write-region nil nil "/tmp/1.txt")) (and (buffer-name temp-buffer) 
(kill-buffer temp-buffer))))
  (let ((temp-buffer (generate-new-buffer " *temp*" t))) (save-current-buffer 
(set-buffer temp-buffer) (unwind-protect (progn (insert "test") (write-region 
nil nil "/tmp/1.txt")) (and (buffer-name temp-buffer) (kill-buffer 
temp-buffer)))))
  (progn (let ((temp-buffer (generate-new-buffer " *temp*" t))) 
(save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (insert 
"test") (write-region nil nil "/tmp/1.txt")) (and (buffer-name temp-buffer) 
(kill-buffer temp-buffer))))))
  elisp--eval-last-sexp(nil)
  eval-last-sexp(nil)
  funcall-interactively(eval-last-sexp nil)
  command-execute(eval-last-sexp)

Expected: No error is thrown.

In GNU Emacs 30.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version
 3.24.38, cairo version 1.17.8) of 2023-07-21 built on localhost
Repository revision: 7f77120683d6f150e61e11b41d75ba16ee5210a4
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12101008
System Description: Gentoo Linux


-- 
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>



--- End Message ---
--- Begin Message --- Subject: Re: bug#64821: 30.0.50; write-region errs when overwriting an already open file Date: Tue, 25 Jul 2023 15:19:13 +0300
> From: Ihor Radchenko <yantar92@posteo.net>
> Cc: 64821@debbugs.gnu.org
> Date: Tue, 25 Jul 2023 08:16:23 +0000
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> >> Expected: No error is thrown.
> >
> > Thanks, should be fixed now on the master branch.
> 
> I confirm the fix. Thanks!

Thanks for testing; closing the bug.


--- End Message ---

reply via email to

[Prev in Thread] Current Thread [Next in Thread]