Subject: bug#47678: 27.1; `completion-boundaries` assertion failure for file

From: Daniel Mendler <[email-masked]>
Date: Tue, 13 Apr 2021 06:04:24 +0200

On 4/13/21 1:28 AM, Stefan Monnier wrote:
>> 2. Press "C-x C-f"
>> 3. Enter the path "~//"
>> 4. Move the point between the slashes, "~/|/"
>> 5. Press "C-."
> 
> Thanks!
> [ It would have helped to say what happens for you there.  ]

Yes, I wrote "assertion failure". Sorry for not having been more precise 
(out of bounds error/assertion failure and pasted a stack trace, I will 
do that the next time). On Emacs 28 it seems to only give an out of 
bounds error directly. But from the patch below you identified the 
relevant line. I had seen ufull/ustring/usomething in the error message.

> I installed the patch below, which seems to fix the immediate problem
> I managed to reproduce, but it might lead to further problems down
> the road.

Thank you for looking into this. I hope this will not lead to further 
problems, it is mostly an edge case when moving around the cursor and 
the path at that point is not really valid? What kind of issues could 
happen? I can always enter some invalid/shadowed path ///, /~~~/, ~/~/~, 
which do not make problems (at least with this patch).