]> source.dussan.org Git - tigervnc.git/commitdiff
Merge branch 'master' of https://github.com/madnicendio/tigervnc
authorPierre Ossman <ossman@cendio.se>
Fri, 22 Nov 2024 12:23:03 +0000 (13:23 +0100)
committerPierre Ossman <ossman@cendio.se>
Fri, 22 Nov 2024 12:23:03 +0000 (13:23 +0100)
45 files changed:
1  2 
common/network/TcpSocket.cxx
common/network/UnixSocket.cxx
common/rdr/RandomStream.cxx
common/rdr/ZlibOutStream.cxx
common/rfb/CConnection.cxx
common/rfb/CMsgReader.cxx
common/rfb/CSecurityTLS.cxx
common/rfb/Configuration.cxx
common/rfb/SConnection.cxx
common/rfb/SSecurityVncAuth.cxx
common/rfb/VNCSConnectionST.cxx
common/rfb/VNCServerST.cxx
unix/vncconfig/vncconfig.cxx
unix/x0vncserver/XDesktop.cxx
unix/x0vncserver/x0vncserver.cxx
unix/xserver/hw/vnc/XserverDesktop.cc
unix/xserver/hw/vnc/Xvnc.man
unix/xserver/hw/vnc/vncExtInit.cc
vncviewer/OptionsDialog.cxx
vncviewer/ServerDialog.cxx
vncviewer/Viewport.cxx
vncviewer/vncviewer.cxx
win/rfb_win32/CleanDesktop.cxx
win/rfb_win32/Clipboard.cxx
win/rfb_win32/CurrentUser.cxx
win/rfb_win32/DIBSectionBuffer.cxx
win/rfb_win32/DeviceContext.cxx
win/rfb_win32/DeviceFrameBuffer.cxx
win/rfb_win32/Dialog.cxx
win/rfb_win32/MonitorInfo.cxx
win/rfb_win32/MsgWindow.cxx
win/rfb_win32/RegConfig.cxx
win/rfb_win32/Registry.cxx
win/rfb_win32/SDisplay.cxx
win/rfb_win32/SInput.cxx
win/rfb_win32/Service.cxx
win/rfb_win32/SocketManager.cxx
win/vncconfig/Connections.h
win/vncconfig/Legacy.cxx
win/vncconfig/vncconfig.cxx
win/winvnc/ManagedListener.cxx
win/winvnc/QueryConnectDialog.cxx
win/winvnc/STrayIcon.cxx
win/winvnc/VNCServerWin32.cxx
win/winvnc/winvnc.cxx

index bf603755b283c1bad96c79d27b23f420a3369e61,76055abb113314660ca923f9afb0360ed6a12d4d..e37861f45eb30d771fc6ab259c66cee802370941
@@@ -302,7 -299,7 +302,7 @@@ TcpListener::TcpListener(const struct s
    int sock;
  
    if ((sock = socket (listenaddr->sa_family, SOCK_STREAM, 0)) < 0)
-     throw socket_error("unable to create listening socket", errorNumber);
 -    throw SocketException("Unable to create listening socket", errorNumber);
++    throw socket_error("Unable to create listening socket", errorNumber);
  
    memcpy (&sa, listenaddr, listenaddrlen);
  #ifdef IPV6_V6ONLY
      if (setsockopt (sock, IPPROTO_IPV6, IPV6_V6ONLY, (char*)&one, sizeof(one))) {
        int e = errorNumber;
        closesocket(sock);
-       throw socket_error("unable to set IPV6_V6ONLY", e);
 -      throw SocketException("Unable to set IPV6_V6ONLY", e);
++      throw socket_error("Unable to set IPV6_V6ONLY", e);
      }
    }
  #endif /* defined(IPV6_V6ONLY) */
                   (char *)&one, sizeof(one)) < 0) {
      int e = errorNumber;
      closesocket(sock);
-     throw socket_error("unable to create listening socket", e);
 -    throw SocketException("Unable to create listening socket", e);
++    throw socket_error("Unable to create listening socket", e);
    }
  #endif
  
    if (bind(sock, &sa.u.sa, listenaddrlen) == -1) {
      int e = errorNumber;
      closesocket(sock);
-     throw socket_error("failed to bind socket", e);
 -    throw SocketException("Failed to bind socket", e);
++    throw socket_error("Failed to bind socket", e);
    }
  
    listen(sock);
@@@ -446,7 -443,7 +446,7 @@@ void network::createTcpListeners(std::l
    snprintf (service, sizeof (service) - 1, "%d", port);
    service[sizeof (service) - 1] = '\0';
    if ((result = getaddrinfo(addr, service, &hints, &ai)) != 0)
-     throw getaddrinfo_error("unable to resolve listening address", result);
 -    throw GAIException("Unable to resolve listening address", result);
++    throw getaddrinfo_error("Unable to resolve listening address", result);
  
    try {
      createTcpListeners(listeners, ai);
@@@ -633,7 -630,7 +633,7 @@@ TcpFilter::Pattern TcpFilter::parsePatt
      }
  
      if ((result = getaddrinfo (parts[0].c_str(), nullptr, &hints, &ai)) != 0) {
-       throw getaddrinfo_error("unable to resolve host by name", result);
 -      throw GAIException("Unable to resolve host by name", result);
++      throw getaddrinfo_error("Unable to resolve host by name", result);
      }
  
      memcpy (&pattern.address.u.sa, ai->ai_addr, ai->ai_addrlen);
      if (parts.size() > 1) {
        if (family == AF_INET &&
            (parts[1].find('.') != std::string::npos)) {
-         throw std::invalid_argument("mask no longer supported for "
 -        throw Exception("Mask no longer supported for filter, "
 -                        "use prefix instead");
++        throw std::invalid_argument("Mask no longer supported for "
 +                                    "filter, use prefix instead");
        }
  
        pattern.prefixlen = (unsigned int) atoi(parts[1].c_str());
index c8517300cb7730870b1318f221dac72e5a6b2081,fb631dae97229ccd23397d36b17e4b36121197eb..fb017a535edbfe49aba1b271e4446de8990ccef0
@@@ -72,7 -69,7 +72,7 @@@ UnixSocket::UnixSocket(const char *path
    }
  
    if (result == -1)
-     throw socket_error("unable to connect to socket", err);
 -    throw SocketException("Unable to connect to socket", err);
++    throw socket_error("Unable to connect to socket", err);
  
    setFd(sock);
  }
@@@ -123,7 -120,7 +123,7 @@@ UnixListener::UnixListener(const char *
  
    // - Create a socket
    if ((fd = socket(AF_UNIX, SOCK_STREAM, 0)) < 0)
-     throw socket_error("unable to create listening socket", errno);
 -    throw SocketException("Unable to create listening socket", errno);
++    throw socket_error("Unable to create listening socket", errno);
  
    // - Delete existing socket (ignore result)
    unlink(path);
    umask(saved_umask);
    if (result < 0) {
      close(fd);
-     throw socket_error("unable to bind listening socket", err);
 -    throw SocketException("Unable to bind listening socket", err);
++    throw socket_error("Unable to bind listening socket", err);
    }
  
    // - Set socket mode
    if (chmod(path, mode) < 0) {
      err = errno;
      close(fd);
-     throw socket_error("unable to set socket mode", err);
 -    throw SocketException("Unable to set socket mode", err);
++    throw socket_error("Unable to set socket mode", err);
    }
  
    listen(fd);
index 485259cf14e8feeb1c926e02565dbeab592ddeb7,b045d48a231b822f244e0bb1cc268d8e2ab4f116..3a524102a464b344405986927a4c663e97028a5f
@@@ -89,7 -89,7 +89,7 @@@ bool RandomStream::fillBuffer() 
  #ifdef RFB_HAVE_WINCRYPT
    if (provider) {
      if (!CryptGenRandom(provider, availSpace(), (uint8_t*)end))
-       throw rdr::win32_error("unable to CryptGenRandom", GetLastError());
 -      throw rdr::Win32Exception("Unable to CryptGenRandom", GetLastError());
++      throw rdr::win32_error("Unable to CryptGenRandom", GetLastError());
      end += availSpace();
    } else {
  #else
@@@ -97,8 -97,8 +97,8 @@@
    if (fp) {
      size_t n = fread((uint8_t*)end, 1, availSpace(), fp);
      if (n <= 0)
-       throw rdr::posix_error("reading /dev/urandom or /dev/random "
 -      throw rdr::PosixException("Reading /dev/urandom or /dev/random failed",
 -                                errno);
++      throw rdr::posix_error("Reading /dev/urandom or /dev/random "
 +                             "failed", errno);
      end += n;
    } else {
  #else
Simple merge
index c6feef9f5b4d4caf35a76b76a2ba28001c59cdf0,a682b8108d62b4fbfa64dec2e5347afed239be39..e845133731cc37e85a8eb797a0a81d8fb8f905ea
@@@ -323,13 -321,13 +323,13 @@@ bool CConnection::processSecurityResult
      securityCompleted();
      return true;
    case secResultFailed:
-     vlog.debug("auth failed");
+     vlog.debug("Auth failed");
      break;
    case secResultTooMany:
-     vlog.debug("auth failed - too many tries");
+     vlog.debug("Auth failed: Too many tries");
      break;
    default:
 -    throw Exception("Unknown security result from server");
 +    throw protocol_error("Unknown security result from server");
    }
  
    if (server.beforeVersion(3,8)) {
Simple merge
index 3761ca30bfad31e705d517864055d46d3a42b446,3b7868baa6b11d3448f07f2178377ba96de357d6..9072ce50a18f48b3fc4b0036d34d494b1b29dadf
@@@ -316,8 -320,8 +316,8 @@@ void CSecurityTLS::checkSession(
  
    err = gnutls_certificate_verify_peers2(session, &status);
    if (err != 0) {
-     vlog.error("server certificate verification failed: %s", gnutls_strerror(err));
+     vlog.error("Server certificate verification failed: %s", gnutls_strerror(err));
 -    throw rdr::TLSException("server certificate verification()", err);
 +    throw rdr::tls_error("server certificate verification()", err);
    }
  
    if (status != 0) {
index 8f7cb6a7697256b1349ea4d134451acb24a48136,763a5635442fff8719f6fc9ad02e1d587309c314..44d42a885a2d5f249e790bdb330bcf20b590145e
@@@ -388,8 -387,8 +388,8 @@@ bool StringParameter::setParam(const ch
    LOCK_CONFIG;
    if (immutable) return true;
    if (!v)
 -    throw rfb::Exception("setParam(<null>) not allowed");
 +    throw std::invalid_argument("setParam(<null>) not allowed");
-   vlog.debug("set %s(String) to %s", getName(), v);
+   vlog.debug("Set %s(String) to %s", getName(), v);
    value = v;
    return true;
  }
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
index 8577df462e894c2a64552c7b810fb3041e0d4033,d3b992007ab0d83ce2ea95a67ffabcb6b547d4a5..2a2be1d5cbd645c20b110c1bb0caf2b9d16e17e1
@@@ -148,12 -146,12 +148,12 @@@ Clipboard::setClipText(const char* text
  
      // - Set the new clipboard data
      if (!SetClipboardData(CF_UNICODETEXT, clip_handle))
 -      throw rdr::Win32Exception("unable to set Win32 clipboard", GetLastError());
 +      throw rdr::win32_error("unable to set Win32 clipboard", GetLastError());
      clip_handle = nullptr;
  
-     vlog.debug("set clipboard");
+     vlog.debug("Set clipboard");
 -  } catch (rdr::Exception& e) {
 -    vlog.debug("%s", e.str());
 +  } catch (std::exception& e) {
 +    vlog.debug("%s", e.what());
    }
  
    // - Close the clipboard
Simple merge
Simple merge
index 1c64e1f5198c3909b8f36efdc56e60250e18c4a7,e6dc85088993fa22dff407e523d69540a8033bcc..353ee71607464e1fe6c44ccff287c19b7ba0d2f6
@@@ -86,8 -86,8 +86,8 @@@ PixelFormat DeviceContext::getPF(HDC dc
          bMask = 0x0000ff;
          break;
        default:
-         vlog.error("bits per pixel %u not supported", bi.bmiHeader.biBitCount);
+         vlog.error("Bits per pixel %u not supported", bi.bmiHeader.biBitCount);
 -        throw rdr::Exception("unknown bits per pixel specified");
 +        throw std::invalid_argument("unknown bits per pixel specified");
        };
        break;
      case BI_BITFIELDS:
Simple merge
Simple merge
index 84a8d50147ed822e1e9f8287865c57ed4f35851a,f35ef69e8fe4de2f472bd569acda9829d51e24b2..9f7c2daf32a4ef40ced62942ea338fe7e6334820
@@@ -44,10 -44,10 +44,10 @@@ static void fillMonitorInfo(HMONITOR mo
    memset(mi, 0, sizeof(MONITORINFOEXA));
    mi->cbSize = sizeof(MONITORINFOEXA);
    if (!GetMonitorInfo(monitor, mi))
 -    throw rdr::Win32Exception("failed to GetMonitorInfo", GetLastError());
 +    throw rdr::win32_error("failed to GetMonitorInfo", GetLastError());
-   vlog.debug("monitor is %ld,%ld-%ld,%ld", mi->rcMonitor.left, mi->rcMonitor.top, mi->rcMonitor.right, mi->rcMonitor.bottom);
-   vlog.debug("work area is %ld,%ld-%ld,%ld", mi->rcWork.left, mi->rcWork.top, mi->rcWork.right, mi->rcWork.bottom);
-   vlog.debug("device is \"%s\"", mi->szDevice);
+   vlog.debug("Monitor is %ld,%ld-%ld,%ld", mi->rcMonitor.left, mi->rcMonitor.top, mi->rcMonitor.right, mi->rcMonitor.bottom);
+   vlog.debug("Work area is %ld,%ld-%ld,%ld", mi->rcWork.left, mi->rcWork.top, mi->rcWork.right, mi->rcWork.bottom);
+   vlog.debug("Device is \"%s\"", mi->szDevice);
  }
  
  
index 4908126ec4d7c5c2bdc911c1e632b9ca9864dcda,8f15c41d4848774b6489ec1a8f5bf2f141bb0bd4..bd35ca0f37e88bff5cc662b67d805e25f3a0d31a
@@@ -61,8 -61,8 +61,8 @@@ LRESULT CALLBACK MsgWindowProc(HWND wnd
  
    try {
      result = _this->processMessage(msg, wParam, lParam);
 -  } catch (rdr::Exception& e) {
 -    vlog.error("Untrapped: %s", e.str());
 +  } catch (std::exception& e) {
-     vlog.error("untrapped: %s", e.what());
++    vlog.error("Untrapped: %s", e.what());
    }
  
    return result;
@@@ -104,9 -104,9 +104,9 @@@ MsgWindow::MsgWindow(const char* name_
                          name.c_str(), WS_OVERLAPPED, 0, 0, 10, 10,
                          nullptr, nullptr, baseClass.instance, this);
    if (!handle) {
 -    throw rdr::Win32Exception("unable to create WMNotifier window instance", GetLastError());
 +    throw rdr::win32_error("unable to create WMNotifier window instance", GetLastError());
    }
-   vlog.debug("created window \"%s\" (%p)", name.c_str(), handle);
+   vlog.debug("Created window \"%s\" (%p)", name.c_str(), handle);
  }
  
  MsgWindow::~MsgWindow() {
index 211570ca7662256015c90380dbf2843f6abb6592,d95166f43e903a353f86d29056e46d0a24ec5251..d98352017450c15246fc15a6097ac07ad1051307
@@@ -67,11 -67,11 +67,11 @@@ void RegConfig::loadRegistryConfig(RegK
        if (!name) break;
        std::string value = key.getRepresentation(name);
        if (!Configuration::setParam(name, value.c_str()))
-         vlog.info("unable to process %s", name);
+         vlog.info("Unable to process %s", name);
      }
 -  } catch (rdr::Win32Exception& e) {
 +  } catch (rdr::win32_error& e) {
      if (e.err != ERROR_INVALID_HANDLE)
 -      vlog.error("%s", e.str());
 +      vlog.error("%s", e.what());
    }
  }
  
index 4775695075d45fd88bf23efa87c88049a3a2358f,4aa0e0138fc51a388ea8374e16d55c5737fe4749..27e55a2e1cc86cdc359904f7c84e64d6d9f61cfe
@@@ -54,16 -54,16 +54,16 @@@ RegKey::RegKey() : key(nullptr), freeKe
  RegKey::RegKey(const HKEY k) : key(nullptr), freeKey(false), valueName(nullptr), valueNameBufLen(0) {
    LONG result = RegOpenKeyEx(k, nullptr, 0, KEY_ALL_ACCESS, &key);
    if (result != ERROR_SUCCESS)
 -    throw rdr::Win32Exception("RegOpenKeyEx(HKEY)", result);
 +    throw rdr::win32_error("RegOpenKeyEx(HKEY)", result);
-   vlog.debug("duplicated %p to %p", k, key);
+   vlog.debug("Duplicated %p to %p", k, key);
    freeKey = true;
  }
  
  RegKey::RegKey(const RegKey& k) : key(nullptr), freeKey(false), valueName(nullptr), valueNameBufLen(0) {
    LONG result = RegOpenKeyEx(k.key, nullptr, 0, KEY_ALL_ACCESS, &key);
    if (result != ERROR_SUCCESS)
 -    throw rdr::Win32Exception("RegOpenKeyEx(RegKey&)", result);
 +    throw rdr::win32_error("RegOpenKeyEx(RegKey&)", result);
-   vlog.debug("duplicated %p to %p", k.key, key);
+   vlog.debug("Duplicated %p to %p", k.key, key);
    freeKey = true;
  }
  
index 33f2d6c92e92b666f74942e44e8762e3f0e274ba,1c269dd50f836b2f439297ff99c0b1df2cd657a3..ee3396497e175c1fe20acdb4d2b9d7d1fbb8830d
@@@ -285,8 -286,8 +285,8 @@@ void SDisplay::restartCore() 
    try {
      // Start a new Core if possible
      startCore();
-     vlog.info("restarted");
+     vlog.info("Restarted");
 -  } catch (rdr::Exception& e) {
 +  } catch (std::exception& e) {
      // If startCore() fails then we MUST disconnect all clients,
      // to cause the server to stop() the desktop.
      // Otherwise, the SDesktop is in an inconsistent state
Simple merge
index 907e321425a4019b690626b4a073c8f957af66d7,86e1dc5c6cba6ab8875df68e5d295163e1f8c830..bc9875e593b77182a60af5bc789bf4704e5fbb76
@@@ -110,12 -110,12 +110,12 @@@ Service::start() 
    entry[0].lpServiceProc = serviceProc;
    entry[1].lpServiceName = nullptr;
    entry[1].lpServiceProc = nullptr;
-   vlog.debug("entering dispatcher");
+   vlog.debug("Entering dispatcher");
    if (!SetProcessShutdownParameters(0x100, 0))
-     vlog.error("unable to set shutdown parameters: %lu", GetLastError());
+     vlog.error("Unable to set shutdown parameters: %lu", GetLastError());
    service = this;
    if (!StartServiceCtrlDispatcher(entry))
-     throw win32_error("unable to start service", GetLastError());
 -    throw Win32Exception("Unable to start service", GetLastError());
++    throw win32_error("Unable to start service", GetLastError());
  }
  
  void
@@@ -335,7 -335,7 +335,7 @@@ bool rfb::win32::registerService(const 
    // - Open the SCM
    ServiceHandle scm = OpenSCManager(nullptr, nullptr, SC_MANAGER_CREATE_SERVICE);
    if (!scm)
-     throw rdr::win32_error("unable to open Service Control Manager", GetLastError());
 -    throw rdr::Win32Exception("Unable to open service control manager", GetLastError());
++    throw rdr::win32_error("Unable to open Service Control Manager", GetLastError());
  
    // - Add the service
    ServiceHandle handle = CreateService(scm,
      SERVICE_AUTO_START, SERVICE_ERROR_IGNORE,
      cmdline.c_str(), nullptr, nullptr, nullptr, nullptr, nullptr);
    if (!handle)
-     throw rdr::win32_error("unable to create service", GetLastError());
 -    throw rdr::Win32Exception("Unable to create service", GetLastError());
++    throw rdr::win32_error("Unable to create service", GetLastError());
  
    // - Set a description
    SERVICE_DESCRIPTION sdesc = {(LPTSTR)desc};
@@@ -380,14 -380,14 +380,14 @@@ bool rfb::win32::unregisterService(cons
    // - Open the SCM
    ServiceHandle scm = OpenSCManager(nullptr, nullptr, SC_MANAGER_CREATE_SERVICE);
    if (!scm)
-     throw rdr::win32_error("unable to open Service Control Manager", GetLastError());
 -    throw rdr::Win32Exception("Unable to open service control manager", GetLastError());
++    throw rdr::win32_error("Unable to open Service Control Manager", GetLastError());
  
    // - Create the service
    ServiceHandle handle = OpenService(scm, name, SC_MANAGER_ALL_ACCESS);
    if (!handle)
-     throw rdr::win32_error("unable to locate the service", GetLastError());
 -    throw rdr::Win32Exception("Unable to locate the service", GetLastError());
++    throw rdr::win32_error("Unable to locate the service", GetLastError());
    if (!DeleteService(handle))
-     throw rdr::win32_error("unable to remove the service", GetLastError());
 -    throw rdr::Win32Exception("Unable to remove the service", GetLastError());
++    throw rdr::win32_error("Unable to remove the service", GetLastError());
  
    // - Register the event log source
    RegKey hk;
@@@ -407,16 -407,16 +407,16 @@@ bool rfb::win32::startService(const cha
    // - Open the SCM
    ServiceHandle scm = OpenSCManager(nullptr, nullptr, SC_MANAGER_CONNECT);
    if (!scm)
-     throw rdr::win32_error("unable to open Service Control Manager", GetLastError());
 -    throw rdr::Win32Exception("Unable to open service control manager", GetLastError());
++    throw rdr::win32_error("Unable to open Service Control Manager", GetLastError());
  
    // - Locate the service
    ServiceHandle handle = OpenService(scm, name, SERVICE_START);
    if (!handle)
-     throw rdr::win32_error("unable to open the service", GetLastError());
 -    throw rdr::Win32Exception("Unable to open the service", GetLastError());
++    throw rdr::win32_error("Unable to open the service", GetLastError());
  
    // - Start the service
    if (!StartService(handle, 0, nullptr))
-     throw rdr::win32_error("unable to start the service", GetLastError());
 -    throw rdr::Win32Exception("Unable to start the service", GetLastError());
++    throw rdr::win32_error("Unable to start the service", GetLastError());
  
    Sleep(500);
  
@@@ -427,17 -427,17 +427,17 @@@ bool rfb::win32::stopService(const char
    // - Open the SCM
    ServiceHandle scm = OpenSCManager(nullptr, nullptr, SC_MANAGER_CONNECT);
    if (!scm)
-     throw rdr::win32_error("unable to open Service Control Manager", GetLastError());
 -    throw rdr::Win32Exception("Unable to open service control manager", GetLastError());
++    throw rdr::win32_error("Unable to open Service Control Manager", GetLastError());
  
    // - Locate the service
    ServiceHandle handle = OpenService(scm, name, SERVICE_STOP);
    if (!handle)
-     throw rdr::win32_error("unable to open the service", GetLastError());
 -    throw rdr::Win32Exception("Unable to open the service", GetLastError());
++    throw rdr::win32_error("Unable to open the service", GetLastError());
  
    // - Start the service
    SERVICE_STATUS status;
    if (!ControlService(handle, SERVICE_CONTROL_STOP, &status))
-     throw rdr::win32_error("unable to stop the service", GetLastError());
 -    throw rdr::Win32Exception("Unable to stop the service", GetLastError());
++    throw rdr::win32_error("Unable to stop the service", GetLastError());
  
    Sleep(500);
  
@@@ -448,17 -448,17 +448,17 @@@ DWORD rfb::win32::getServiceState(cons
    // - Open the SCM
    ServiceHandle scm = OpenSCManager(nullptr, nullptr, SC_MANAGER_CONNECT);
    if (!scm)
-     throw rdr::win32_error("unable to open Service Control Manager", GetLastError());
 -    throw rdr::Win32Exception("Unable to open service control manager", GetLastError());
++    throw rdr::win32_error("Unable to open Service Control Manager", GetLastError());
  
    // - Locate the service
    ServiceHandle handle = OpenService(scm, name, SERVICE_INTERROGATE);
    if (!handle)
-     throw rdr::win32_error("unable to open the service", GetLastError());
 -    throw rdr::Win32Exception("Unable to open the service", GetLastError());
++    throw rdr::win32_error("Unable to open the service", GetLastError());
  
    // - Get the service status
    SERVICE_STATUS status;
    if (!ControlService(handle, SERVICE_CONTROL_INTERROGATE, (SERVICE_STATUS*)&status))
-     throw rdr::win32_error("unable to query the service", GetLastError());
 -    throw rdr::Win32Exception("Unable to query the service", GetLastError());
++    throw rdr::win32_error("Unable to query the service", GetLastError());
  
    return status.dwCurrentState;
  }
index b42c66cb5a42e60ae05ce8b78c31ee2a2501011e,9fdecb9457c3857d5d21a62f38f0af9ced2745f1..7f6d1773b32bf75d6d6d471e9e526ec246148e19
@@@ -236,7 -234,7 +236,7 @@@ void SocketManager::processEvent(HANDL
  
        // Fetch why this event notification triggered
        if (WSAEnumNetworkEvents(ci.sock->getFd(), event, &network_events) == SOCKET_ERROR)
-         throw rdr::socket_error("unable to get WSAEnumNetworkEvents:%u", WSAGetLastError());
 -        throw rdr::SocketException("Unable to get WSAEnumNetworkEvents:%u", WSAGetLastError());
++        throw rdr::socket_error("Unable to get WSAEnumNetworkEvents:%u", WSAGetLastError());
  
        // Cancel event notification for this socket
        if (WSAEventSelect(ci.sock->getFd(), event, 0) == SOCKET_ERROR)
Simple merge
index c6b245cc0b704ebb75cf9eceef6621ff03549756,5c9dac3aae7e35b52fa7c0413db15ab38f2a03ca..3280eaefefef9883be924fdf2350f5189af39eb2
@@@ -143,10 -143,10 +143,10 @@@ void LegacyPage::LoadPrefs(
          try {
            RegKey userKey;
            userKey.openKey(winvnc3, "Default");
-           vlog.info("loading Default prefs");
+           vlog.info("Loading default prefs");
            LoadUserPrefs(userKey);
 -        } catch(rdr::Exception& e) {
 -          vlog.error("Error reading default settings:%s", e.str());
 +        } catch(std::exception& e) {
-           vlog.error("error reading Default settings:%s", e.what());
++          vlog.error("Error reading Default settings:%s", e.what());
          }
  
          // Open the local, user-specific settings
            try {
              RegKey userKey;
              userKey.openKey(winvnc3, username.c_str());
-             vlog.info("loading local User prefs");
+             vlog.info("Loading local user prefs");
              LoadUserPrefs(userKey);
 -          } catch(rdr::Exception& e) {
 -            vlog.error("Error reading local user settings:%s", e.str());
 +          } catch(std::exception& e) {
-             vlog.error("error reading local User settings:%s", e.what());
++            vlog.error("Error reading local User settings:%s", e.what());
            }
  
            // Open the user's own settings
              try {
                RegKey userKey;
                userKey.openKey(HKEY_CURRENT_USER, "Software\\ORL\\WinVNC3");
-               vlog.info("loading global User prefs");
+               vlog.info("Loading global user prefs");
                LoadUserPrefs(userKey);
 -            } catch(rdr::Exception& e) {
 -              vlog.error("Error reading global user settings:%s", e.str());
 +            } catch(std::exception& e) {
-               vlog.error("error reading global User settings:%s", e.what());
++              vlog.error("Error reading global User settings:%s", e.what());
              }
            }
          }
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge