портируя код под windows заметил косяк в функции wchar_t tmp[7]; swprintf (&tmp[0], 6, L"%s", "eng");
в линуксе все ок, а в винде мало того, что это дистриктед, так ещё и не работает нормально... при чем
swprintf (&tmp[0], 6, L"%d", 2);
работает нормально