Subject: Re: bug#55247: [29.0.50; TRAMP] Tramp Always Thinks Buffer Changed On Disk After Edit -> Save

From: Jacob Faibussowitsch <[email-masked]>
Date: Thu, 5 May 2022 09:50:46 -0500

> I'm also getting further errors:

Yes I was just about to mail with the same problems :). FWIW here are the log messages I get

```
Tramp: Checking ‘vc-registered’ for /ssh:<ssh login>:/home/jacob/tmp.c...done
Tramp: Encoding local file ‘/var/folders/9w/7dlszmmn6q1gd5yf3r9n79bc0000gn/T/tramp.luvXdR.c’ using ‘base64-encode-region’...done
Tramp: Decoding remote file ‘/ssh:<ssh login>:/home/jacob/tmp.c’ using ‘base64 -d -i >%s’...done
Wrong type argument: "Wrong type argument", "number-or-marker-p nil"
tramp-error: Wrong type argument: "number-or-marker-p nil”
```

Perhaps related but I also get this rather strange message on C-g:

```
Quit: “"
```

I have not been able to reliably reproduce it unfortunately, but I believe it occurs if you hit C-g after saving the remote buffer.

>> I'm also affected by this rather annoying bug when editing a file over
>> TRAMP. FWIW, I've just bisected it to this patch 47fe7a5983.

Glad someone else took the time to bisect, I was not looking forward to it...

Best regards,

Jacob Faibussowitsch
(Jacob Fai - booss - oh - vitch)

> On May 5, 2022, at 09:42, Lars Ingebrigtsen <[email-masked]> wrote:
> 
> Manuel Giraud <[email-masked]> writes:
> 
>> I'm also affected by this rather annoying bug when editing a file over
>> TRAMP. FWIW, I've just bisected it to this patch 47fe7a5983.
> 
> Sorry; I was testing with an Emacs that was a couple days old.  With the
> current trunk, I can indeed reproduce the problem.  I'm also getting
> further errors:
> 
> Debugger entered--Lisp error: (wrong-type-argument "number-or-marker-p nil")
>  signal(wrong-type-argument ("number-or-marker-p nil"))
>  tramp-error((tramp-file-name "ssh" nil nil "stories" nil "/tmp/foo" nil) wrong-type-argument "number-or-marker-p nil")
>  tramp-signal-hook-function(wrong-type-argument (number-or-marker-p nil))
>  tramp-sh-handle-write-region(nil nil "/ssh:stories:/tmp/foo" nil t "/ssh:stories:/tmp/foo" nil)
>  apply(tramp-sh-handle-write-region (nil nil "/ssh:stories:/tmp/foo" nil t "/ssh:stories:/tmp/foo" nil))
>  tramp-sh-file-name-handler(write-region nil nil "/ssh:stories:/tmp/foo" nil t "/ssh:stories:/tmp/foo" nil)
>  apply(tramp-sh-file-name-handler write-region (nil nil "/ssh:stories:/tmp/foo" nil t "/ssh:stories:/tmp/foo" nil))
>  tramp-file-name-handler(write-region nil nil "/ssh:stories:/tmp/foo" nil t "/ssh:stories:/tmp/foo" nil)
>  write-region(nil nil "/ssh:stories:/tmp/foo" nil t "/ssh:stories:/tmp/foo")
>  basic-save-buffer-2()
>  basic-save-buffer-1()
>  basic-save-buffer(t)
>  save-buffer(1)
> 
> This is on Debian/bookworm writing to a different Debian/bookworm
> machine, if that makes a difference.
> 
> -- 
> (domestic pets only, the antidote for overdose, milk.)
>   bloggy blog: http://lars.ingebrigtsen.no