Subject: Re: bug#62216: Odd file corruption in clojure mode and emacs 30 HEAD

From: Jonathon McKitrick <[email-masked]>
Date: Thu, 31 Aug 2023 14:46:01 +0000

On Wed, Aug 30, 2023 at 02:07:35PM +0200, Gerd Mllmann wrote:
: On 30.08.23 14:00, Eli Zaretskii wrote:
: > > From: Gerd Möllmann <[email-masked]>
: > > Cc: Jonathon McKitrick <[email-masked]>,  Eli Zaretskii <[email-masked]>,  Paul
: > >   Eggert <[email-masked]>,  [email-masked]
: > > Date: Wed, 30 Aug 2023 10:59:08 +0200
: > > 
: > > Po Lu <[email-masked]> writes:
: > > 
: > > > Jonathon McKitrick <[email-masked]> writes:
: > > > 
: > > > > What's the best mechanism to log these values in emacs?
: > > > 
: > > > In this case, printf.
: > > 
: > > When I add this assumption:
: > > 
: > > modified   src/fileio.c
: > > @@ -4805,8 +4805,11 @@ DEFUN ("insert-file-contents", Finsert_file_contents, Sinsert_file_contents,
: > >   	/* 'try' is reserved in some compilers (Microsoft C).  */
: > >   	ptrdiff_t trytry = min (gap_size, READ_BUF_SIZE);
: > > +	ptrdiff_t trytry_old = min (total - inserted, READ_BUF_SIZE);
: > >   	if (!NILP (end))
: > >   	  trytry = min (trytry, total - inserted);
: > > +	if (trytry != trytry_old)
: > > +	  abort ();
: > >   	if (!seekable && NILP (end))
: > >   	  {
: > > 
: > > and make bootstrap, temacs aborts.
: > > 
: > > Can someone tell if this assumption should hold?
: > 
: > You expect READ_BUF_SIZE to never be greater than gap_size?
: 
: Don't know.  This is how I understood Jonathan's nail saying works with this
: old code, doesn't work with this new code.

I'm willing to log some meaningful stats if that would help. Last time I logged these values, I was inundated with info, but if I could
narrow it down to the most useful cases, I could log the relevant bits and report back.

Jonathon McKitrick
--
'My other computer is your Windows box.'