> Date: Fri, 1 Jan 2016 18:18:34 +0000
> From: Gavin Smith <[email protected]>
> Cc: Texinfo <[email protected]>
> 
> I had an idea for how that value could be obtained. The pointer is
> advanced according to the return value of mbrtowc, and mbrtowc returns
> -1 for an error. But the return type of mbrtowc is unsigned, so I did:
> 
>  if ((long) mbrlen(p, len, NULL) > 0)
> 
> and similar.
> 
> However, if size_t is a narrower type than long (e.g. size_t 32 bits,
> long 64 bits)

I don't think there's any architecture where this is true.  The
opposite is true in a 64-bit Windows build (which isn't my case).  But
I don't think I ever saw a size_t that is narrower than a long.

I'm quite sure this crash is related to the version mbrtowc we have in
xspara.c, I just need to devise a way to catch it.  Unfortunately,
using fprintf and sprintf cause compilation errors there...

Reply via email to