return false;
is->clearRestorePoint();
- CharArray reason(len + 1);
- is->readBytes(reason.buf, len);
- reason.buf[len] = '\0';
+ std::vector<char> reason(len + 1);
+ is->readBytes(reason.data(), len);
+ reason[len] = '\0';
state_ = RFBSTATE_INVALID;
- throw AuthFailureException(reason.buf);
+ throw AuthFailureException(reason.data());
}
bool CConnection::processInitMsg()
#include <rfb/clipboardTypes.h>
#include <rfb/Exception.h>
#include <rfb/LogWriter.h>
-#include <rfb/util.h>
#include <rfb/CMsgHandler.h>
#include <rfb/CMsgReader.h>
if (!is->hasDataOrRestore(len))
return false;
is->clearRestorePoint();
- CharArray name(len + 1);
- is->readBytes(name.buf, len);
- name.buf[len] = '\0';
- handler->serverInit(width, height, pf, name.buf);
+ std::vector<char> name(len + 1);
+ is->readBytes(name.data(), len);
+ name[len] = '\0';
+ handler->serverInit(width, height, pf, name.data());
return true;
}
vlog.error("cut text too long (%d bytes) - ignoring",len);
return true;
}
- CharArray ca(len);
- is->readBytes(ca.buf, len);
- std::string filtered(convertLF(ca.buf, len));
+ std::vector<char> ca(len);
+ is->readBytes(ca.data(), len);
+ std::string filtered(convertLF(ca.data(), len));
handler->serverCutText(filtered.c_str());
return true;
return false;
is->clearRestorePoint();
- CharArray name(len + 1);
- is->readBytes(name.buf, len);
- name.buf[len] = '\0';
+ std::vector<char> name(len + 1);
+ is->readBytes(name.data(), len);
+ name[len] = '\0';
if (x || y || w || h) {
vlog.error("Ignoring DesktopName rect with non-zero position/size");
} else {
- handler->setName(name.buf);
+ handler->setName(name.data());
}
return true;
#include <rfb/qemuTypes.h>
#include <rfb/clipboardTypes.h>
#include <rfb/Exception.h>
-#include <rfb/util.h>
#include <rfb/SMsgHandler.h>
#include <rfb/SMsgReader.h>
#include <rfb/Configuration.h>
return true;
}
- CharArray ca(len);
- is->readBytes(ca.buf, len);
- std::string filtered(convertLF(ca.buf, len));
+ std::vector<char> ca(len);
+ is->readBytes(ca.data(), len);
+ std::string filtered(convertLF(ca.data(), len));
handler->clientCutText(filtered.c_str());
return true;
LONG result = RegQueryValueEx(key, valname, 0, &type, 0, &length);
if (result != ERROR_SUCCESS)
throw rdr::SystemException("get registry value length", result);
- CharArray data(length);
- result = RegQueryValueEx(key, valname, 0, &type, (BYTE*)data.buf, &length);
+ std::vector<uint8_t> data(length);
+ result = RegQueryValueEx(key, valname, 0, &type, (BYTE*)data.data(), &length);
if (result != ERROR_SUCCESS)
throw rdr::SystemException("get registry value", result);
switch (type) {
case REG_BINARY:
{
- return binToHex((const uint8_t*)data.buf, length);
+ return binToHex(data.data(), length);
}
case REG_SZ:
if (length) {
- return std::string(data.buf, length);
+ return std::string((char*)data.data(), length);
} else {
return "";
}
case REG_DWORD:
{
char tmp[16];
- sprintf(tmp, "%lu", *((DWORD*)data.buf));
+ sprintf(tmp, "%lu", *((DWORD*)data.data()));
return tmp;
}
case REG_EXPAND_SZ:
{
if (length) {
- std::string str(data.buf, length);
+ std::string str((char*)data.data(), length);
DWORD required = ExpandEnvironmentStrings(str.c_str(), 0, 0);
if (required==0)
throw rdr::SystemException("ExpandEnvironmentStrings", GetLastError());
- CharArray result(required);
- length = ExpandEnvironmentStrings(str.c_str(), result.buf, required);
+ std::vector<char> result(required);
+ length = ExpandEnvironmentStrings(str.c_str(), result.data(), required);
if (required<length)
throw rdr::Exception("unable to expand environment strings");
- return result.buf;
+ return result.data();
} else {
return "";
}
{
HWND listBox = GetDlgItem(handle, IDC_HOSTS);
int item = SendMessage(listBox, LB_GETCURSEL, 0, 0);
- CharArray pattern(SendMessage(listBox, LB_GETTEXTLEN, item, 0)+1);
- SendMessage(listBox, LB_GETTEXT, item, (LPARAM)pattern.buf);
+ std::vector<char> pattern(SendMessage(listBox, LB_GETTEXTLEN, item, 0)+1);
+ SendMessage(listBox, LB_GETTEXT, item, (LPARAM)pattern.data());
- if (hostDialog.showDialog(pattern.buf)) {
+ if (hostDialog.showDialog(pattern.data())) {
const char* newPat = hostDialog.getPattern();
if (newPat) {
- item = SendMessage(listBox, LB_FINDSTRINGEXACT, item, (LPARAM)pattern.buf);
+ item = SendMessage(listBox, LB_FINDSTRINGEXACT, item, (LPARAM)pattern.data());
if (item != LB_ERR) {
SendMessage(listBox, LB_DELETESTRING, item, 0);
SendMessage(listBox, LB_INSERTSTRING, item, (LPARAM)newPat);
{
HWND listBox = GetDlgItem(handle, IDC_HOSTS);
int item = SendMessage(listBox, LB_GETCURSEL, 0, 0);
- CharArray pattern(SendMessage(listBox, LB_GETTEXTLEN, item, 0)+1);
- SendMessage(listBox, LB_GETTEXT, item, (LPARAM)pattern.buf);
+ std::vector<char> pattern(SendMessage(listBox, LB_GETTEXTLEN, item, 0)+1);
+ SendMessage(listBox, LB_GETTEXT, item, (LPARAM)pattern.data());
SendMessage(listBox, LB_DELETESTRING, item, 0);
- SendMessage(listBox, LB_INSERTSTRING, item-1, (LPARAM)pattern.buf);
+ SendMessage(listBox, LB_INSERTSTRING, item-1, (LPARAM)pattern.data());
SendMessage(listBox, LB_SETCURSEL, item-1, 0);
onCommand(IDC_HOSTS, EN_CHANGE);
}
{
HWND listBox = GetDlgItem(handle, IDC_HOSTS);
int item = SendMessage(listBox, LB_GETCURSEL, 0, 0);
- CharArray pattern(SendMessage(listBox, LB_GETTEXTLEN, item, 0)+1);
- SendMessage(listBox, LB_GETTEXT, item, (LPARAM)pattern.buf);
+ std::vector<char> pattern(SendMessage(listBox, LB_GETTEXTLEN, item, 0)+1);
+ SendMessage(listBox, LB_GETTEXT, item, (LPARAM)pattern.data());
SendMessage(listBox, LB_DELETESTRING, item, 0);
- SendMessage(listBox, LB_INSERTSTRING, item+1, (LPARAM)pattern.buf);
+ SendMessage(listBox, LB_INSERTSTRING, item+1, (LPARAM)pattern.data());
SendMessage(listBox, LB_SETCURSEL, item+1, 0);
onCommand(IDC_HOSTS, EN_CHANGE);
}