This should be fixed sometime:
/* XXX if sv was originally non-utf8 with a char in the
* range 0x80-0xff, then if it got upgraded, we should
* calculate char len rather than byte len here */
int i;
if (vectorize)
goto unknown;
+ /* XXX if sv was originally non-utf8 with a char in the
+ * range 0x80-0xff, then if it got upgraded, we should
+ * calculate char len rather than byte len here */
i = SvCUR(sv) - origlen;
if (args) {
switch (intsize) {