Browse Source

Make rawBytesEquivalent an unsigned 64-bit integer. Otherwise, it will overflow in less than a minute if using a full-screen video or 3D application.


git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4639 3789f03b-4d11-0410-bbf8-ca57d06f2519
tags/v1.1.90
DRC 12 years ago
parent
commit
887c5fd86e
3 changed files with 4 additions and 3 deletions
  1. 1
    0
      common/rdr/types.h
  2. 1
    1
      common/rfb/SMsgWriter.cxx
  3. 2
    2
      common/rfb/SMsgWriter.h

+ 1
- 0
common/rdr/types.h View File

@@ -24,6 +24,7 @@ namespace rdr {
typedef unsigned char U8;
typedef unsigned short U16;
typedef unsigned int U32;
typedef unsigned long long U64;
typedef signed char S8;
typedef signed short S16;
typedef signed int S32;

+ 1
- 1
common/rfb/SMsgWriter.cxx View File

@@ -53,7 +53,7 @@ SMsgWriter::~SMsgWriter()
vlog.info(" %s rects %d, bytes %d",
encodingName(i), rectsSent[i], bytesSent[i]);
}
vlog.info(" raw bytes equivalent %d, compression ratio %f",
vlog.info(" raw bytes equivalent %llu, compression ratio %f",
rawBytesEquivalent, (double)rawBytesEquivalent / bytes);
delete [] imageBuf;
}

+ 2
- 2
common/rfb/SMsgWriter.h View File

@@ -161,7 +161,7 @@ namespace rfb {
int getUpdatesSent() { return updatesSent; }
int getRectsSent(int encoding) { return rectsSent[encoding]; }
int getBytesSent(int encoding) { return bytesSent[encoding]; }
int getRawBytesEquivalent() { return rawBytesEquivalent; }
rdr::U64 getRawBytesEquivalent() { return rawBytesEquivalent; }

int imageBufIdealSize;

@@ -180,7 +180,7 @@ namespace rfb {
int updatesSent;
int bytesSent[encodingMax+1];
int rectsSent[encodingMax+1];
int rawBytesEquivalent;
rdr::U64 rawBytesEquivalent;

rdr::U8* imageBuf;
int imageBufSize;

Loading…
Cancel
Save