+ // the argument specifies **byte size**, but m_buffer is of type
+ // wxChar. Under unicode: sizeof(wxChar) > 1, so the buffer size is
+ // bytes / sizeof(wxChar) rounded upwards.
+ m_buffer = new wxChar[(bytes + sizeof(wxChar) - 1) / sizeof(wxChar)];