Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mumble-voip/mumble.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThorvald Natvig <slicer@users.sourceforge.net>2007-07-20 04:37:29 +0400
committerThorvald Natvig <slicer@users.sourceforge.net>2007-07-20 04:37:29 +0400
commitae9f13e776105aa83a756f8f009f78789dda1515 (patch)
tree220971b42ad36e12efb44eb1d9957a94ddd3c6fc /src/PacketDataStream.h
parent3d8e058017d71534fbcb5c7d318b28d57c937049 (diff)
PacketDataStream bug for negative numbers > 32 bit
git-svn-id: https://mumble.svn.sourceforge.net/svnroot/mumble/trunk@645 05730e5d-ab1b-0410-a4ac-84af385074fa
Diffstat (limited to 'src/PacketDataStream.h')
-rw-r--r--src/PacketDataStream.h9
1 files changed, 3 insertions, 6 deletions
diff --git a/src/PacketDataStream.h b/src/PacketDataStream.h
index 8084392f9..981494aad 100644
--- a/src/PacketDataStream.h
+++ b/src/PacketDataStream.h
@@ -190,7 +190,6 @@ class PacketDataStream {
PacketDataStream &operator >>(quint64 &i) {
quint32 v = next();
- bool invert = false;
if ((v & 0xF0) == 0xF0) {
switch (v & 0xFC) {
case 0xF0:
@@ -200,9 +199,9 @@ class PacketDataStream {
i=next() << 56 | next() << 48 | next() << 40 | next() << 32 | next() << 24 | next() << 16 | next() << 8 | next();
return *this;
case 0xF8:
- invert = true;
- v = next();
- break;
+ *this >> i;
+ i = ~i;
+ return *this;
case 0xFC:
i=v & 0x03;
i = ~i;
@@ -222,8 +221,6 @@ class PacketDataStream {
} else {
i=(v & 0x7F);
}
- if (invert)
- i = ~i;
return *this;
}