parseurl() uses isblank() and sscanf to extract a URL that is followed by a space. Howerver, if that space is
coded in UTF-8 (for example a non-breakable space 0xC2 0XA)) and takes more than one byte, the sscanf will fail to detect that and will concatenate the space to the URL.
The solution here would be to replace the sscanf by a regexp, taking advantage that hypermail already uses
PCRE for other things elsewhere.
parseurl() uses isblank() and sscanf to extract a URL that is followed by a space. Howerver, if that space is coded in UTF-8 (for example a non-breakable space 0xC2 0XA)) and takes more than one byte, the sscanf will fail to detect that and will concatenate the space to the URL.
The solution here would be to replace the sscanf by a regexp, taking advantage that hypermail already uses PCRE for other things elsewhere.