bool CXBMCTinyXML::LoadFile(const std::string& _filename, TiXmlEncoding encoding) { value = _filename.c_str(); XFILE::CFile file; XFILE::auto_buffer buffer; if (file.LoadFile(value, buffer) <= 0) { SetError(TIXML_ERROR_OPENING_FILE, NULL, NULL, TIXML_ENCODING_UNKNOWN); return false; } // Delete the existing data: Clear(); location.Clear(); std::string data(buffer.get(), buffer.length()); buffer.clear(); // free memory early if (encoding == TIXML_ENCODING_UNKNOWN) Parse(data, file.GetContentCharset()); else Parse(data, encoding); if (Error()) return false; return true; }