message: Don't underflow when reading padding if serialiser is in an error state
diff: @@ -814,6 +814,7 @@ void ReplayProxy::Proxied_GetBufferData(ParamSerialiser &paramser, ReturnSeriali
  RDCASSERT(offs <= dataSize, offs, dataSize);
  RDCASSERT(dataSize - offs < sizeof(empty), offs, dataSize);
  + if(offs < dataSize)
  ser.GetReader()->Read(empty, dataSize - offs);
  }
  else
  @@ -828,6 +829,7 @@ void ReplayProxy::Proxied_GetBufferData(ParamSerialiser &paramser, ReturnSeriali
  RDCASSERT(offs <= dataSize, offs, dataSize);
  RDCASSERT(dataSize - offs < sizeof(empty), offs, dataSize);
  + if(offs < dataSize)
  ser.GetWriter()->Write(empty, dataSize - offs);
  }
  @@ -891,6 +893,7 @@ void ReplayProxy::Proxied_GetTextureData(ParamSerialiser &paramser, ReturnSerial
  RDCASSERT(offs <= dataSize, offs, dataSize);
  RDCASSERT(dataSize - offs < sizeof(empty), offs, dataSize);
  + if(offs < dataSize)
  ser.GetReader()->Read(empty, dataSize - offs);
  }
  else
  @@ -905,6 +908,7 @@ void ReplayProxy::Proxied_GetTextureData(ParamSerialiser &paramser, ReturnSerial
  RDCASSERT(offs <= dataSize, offs, dataSize);
  RDCASSERT(dataSize - offs < sizeof(empty), offs, dataSize);
  + if(offs < dataSize)
  ser.GetWriter()->Write(empty, dataSize - offs);
  }
  @@ -1790,6 +1794,7 @@ void ReplayProxy::DeltaTransferBytes(SerialiserType &xferser, bytebuf &reference
  RDCASSERT(offs <= uncompSize, offs, uncompSize);
  RDCASSERT(uncompSize - offs < sizeof(empty), offs, uncompSize);
  + if(offs < uncompSize)
  ser.GetReader()->Read(empty, uncompSize - offs);
  }
  @@ -1976,6 +1981,7 @@ void ReplayProxy::DeltaTransferBytes(SerialiserType &xferser, bytebuf &reference
  RDCASSERT(offs <= uncompSize, offs, uncompSize);
  RDCASSERT(uncompSize - offs < sizeof(empty), offs, uncompSize);
  + if(offs < uncompSize)
  ser.GetWriter()->Write(empty, uncompSize - offs);
  }
  