Sfoglia il codice sorgente

Throw exception instead on bad access check

An assert will kill the entire server, which is overly harsh when there
is a problem with a single connection. Instead, throw an exception which
will just disconnect that specific client.
tags/v1.13.90
Pierre Ossman 1 anno fa
parent
commit
6b7a69e807
1 ha cambiato i file con 2 aggiunte e 2 eliminazioni
  1. 2
    2
      common/rfb/SConnection.cxx

+ 2
- 2
common/rfb/SConnection.cxx Vedi File

@@ -23,7 +23,6 @@

#include <stdio.h>
#include <string.h>
#include <assert.h>
#include <rfb/Exception.h>
#include <rfb/Security.h>
#include <rfb/clipboardTypes.h>
@@ -347,7 +346,8 @@ void SConnection::setAccessRights(AccessRights ar)

bool SConnection::accessCheck(AccessRights ar) const
{
assert(state_ >= RFBSTATE_QUERYING);
if (state_ < RFBSTATE_QUERYING)
throw Exception("SConnection::accessCheck: invalid state");

return (accessRights & ar) == ar;
}

Loading…
Annulla
Salva