When decoding an IDN label that doesn't contain any ASCII characters, the function puny-decode-string-internal would skip the first letter, thereby returning gibberish instead of the expected result. That is, the example in the puny-decode-string docstring, "xn--bcher-kva", would be decoded correctly since it finds the "kva" part after the last dash, but my domain "xn--9dbdkw.se" would not, since there is no "last dash". This patch seems to fix the problem: