Fix unexpected result using QString::toStdWString() (fix #107 again, QTBUG-25536)

* QString::toStdWString() and QString::toUCS4() will have wrong size when
  QString instances contain non-BMP characters.

Close #320