correct byte-order for integer read
This commit is contained in:
parent
afe5a94c8c
commit
b2dbd2a85c
|
|
@ -1,4 +1,5 @@
|
||||||
*.user
|
*.user
|
||||||
*.ncb
|
*.ncb
|
||||||
|
*.suo
|
||||||
/Debug
|
/Debug
|
||||||
/GeneratedFiles
|
/GeneratedFiles
|
||||||
|
|
@ -9,7 +9,7 @@ void myMessageOutput(QtMsgType type, const char *msg)
|
||||||
switch (type) {
|
switch (type) {
|
||||||
case QtDebugMsg:
|
case QtDebugMsg:
|
||||||
|
|
||||||
//fprintf(stderr, "# %s\n", msg);
|
fprintf(stderr, "# %s\n", msg);
|
||||||
|
|
||||||
break;
|
break;
|
||||||
case QtWarningMsg:
|
case QtWarningMsg:
|
||||||
|
|
|
||||||
|
|
@ -55,11 +55,6 @@ void QAMQP::Frame::Base::readHeader( QDataStream & stream )
|
||||||
stream >> channel_;
|
stream >> channel_;
|
||||||
stream >> size_;
|
stream >> size_;
|
||||||
|
|
||||||
/*
|
|
||||||
stream.readRawData(reinterpret_cast<char*>(&type_), sizeof(type_));
|
|
||||||
stream.readRawData(reinterpret_cast<char*>(&channel_), sizeof(channel_));
|
|
||||||
stream.readRawData(reinterpret_cast<char*>(&size_), sizeof(size_));*/
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void QAMQP::Frame::Base::readEnd( QDataStream & stream )
|
void QAMQP::Frame::Base::readEnd( QDataStream & stream )
|
||||||
|
|
@ -154,46 +149,56 @@ QVariant QAMQP::Frame::readField( qint8 valueType, QDataStream &s )
|
||||||
QVariant value;
|
QVariant value;
|
||||||
QByteArray tmp;
|
QByteArray tmp;
|
||||||
qint8 nameSize_;
|
qint8 nameSize_;
|
||||||
char octet[1] = {0}, octet2[2] = {0}, octet4[4] = {0}, octet8[8] = {0};
|
char octet = 0;
|
||||||
|
|
||||||
switch(valueType)
|
switch(valueType)
|
||||||
{
|
{
|
||||||
case 't':
|
case 't':
|
||||||
s.readRawData(octet, sizeof(octet));
|
s.readRawData(&octet, sizeof(octet));
|
||||||
value = QVariant::fromValue<bool>(*octet > 0);
|
value = QVariant::fromValue<bool>(octet > 0);
|
||||||
break;
|
break;
|
||||||
case 'b':
|
case 'b':
|
||||||
s.readRawData(octet, sizeof(octet));
|
s.readRawData(&octet, sizeof(octet));
|
||||||
value = QVariant::fromValue<int>(*octet);
|
value = QVariant::fromValue<int>(octet);
|
||||||
break;
|
break;
|
||||||
case 'B':
|
case 'B':
|
||||||
s.readRawData(octet, sizeof(octet));
|
s.readRawData(&octet, sizeof(octet));
|
||||||
value = QVariant::fromValue<uint>(*octet);
|
value = QVariant::fromValue<uint>(octet);
|
||||||
break;
|
break;
|
||||||
case 'U':
|
case 'U':
|
||||||
s.readRawData(octet2, sizeof(octet2));
|
{
|
||||||
value = QVariant::fromValue<int>(*reinterpret_cast<qint16*>(octet2));
|
qint16 tmp_value_ = 0;
|
||||||
break;
|
s >> tmp_value_;
|
||||||
|
value = QVariant::fromValue<int>(tmp_value_);
|
||||||
|
break;
|
||||||
|
}
|
||||||
case 'u':
|
case 'u':
|
||||||
s.readRawData(octet2, sizeof(octet2));
|
{
|
||||||
value = QVariant::fromValue<uint>(*reinterpret_cast<quint16*>(octet2));
|
quint16 tmp_value_ = 0;
|
||||||
break;
|
s >> tmp_value_;
|
||||||
|
value = QVariant::fromValue<uint>(tmp_value_);
|
||||||
|
break;
|
||||||
|
}
|
||||||
case 'I':
|
case 'I':
|
||||||
s.readRawData(octet4, sizeof(octet4));
|
{
|
||||||
value = QVariant::fromValue<int>(*reinterpret_cast<qint32*>(octet4));
|
qint32 tmp_value_ = 0;
|
||||||
break;
|
s >> tmp_value_;
|
||||||
|
value = QVariant::fromValue<int>(tmp_value_);
|
||||||
|
break;
|
||||||
|
}
|
||||||
case 'i':
|
case 'i':
|
||||||
s.readRawData(octet4, sizeof(octet4));
|
{
|
||||||
value = QVariant::fromValue<uint>(*reinterpret_cast<quint32*>(octet4));
|
quint32 tmp_value_ = 0;
|
||||||
break;
|
s >> tmp_value_;
|
||||||
|
value = QVariant::fromValue<uint>(tmp_value_);
|
||||||
|
break;
|
||||||
|
}
|
||||||
case 'L':
|
case 'L':
|
||||||
{
|
{
|
||||||
qlonglong v = 0 ;
|
qlonglong v = 0 ;
|
||||||
s >> v;
|
s >> v;
|
||||||
value = v;
|
value = v;
|
||||||
}
|
}
|
||||||
/*
|
|
||||||
s.readRawData(octet8, sizeof(octet8));
|
|
||||||
value = QVariant::fromValue<qlonglong>(*reinterpret_cast<qlonglong*>(octet8));*/
|
|
||||||
|
|
||||||
break;
|
break;
|
||||||
case 'l':
|
case 'l':
|
||||||
|
|
@ -202,19 +207,22 @@ QVariant QAMQP::Frame::readField( qint8 valueType, QDataStream &s )
|
||||||
s >> v;
|
s >> v;
|
||||||
value = v;
|
value = v;
|
||||||
}
|
}
|
||||||
/*
|
|
||||||
s.readRawData(octet8, sizeof(octet8));
|
|
||||||
value = QVariant::fromValue<qulonglong>(*reinterpret_cast<qulonglong*>(octet8));*/
|
|
||||||
|
|
||||||
break;
|
break;
|
||||||
case 'f':
|
case 'f':
|
||||||
s.readRawData(octet4, sizeof(octet4));
|
{
|
||||||
value = QVariant::fromValue<float>(*reinterpret_cast<float*>(octet4));
|
float tmp_value_;
|
||||||
break;
|
s >> tmp_value_;
|
||||||
|
value = QVariant::fromValue<float>(tmp_value_);
|
||||||
|
break;
|
||||||
|
}
|
||||||
case 'd':
|
case 'd':
|
||||||
s.readRawData(octet8, sizeof(octet8));
|
{
|
||||||
value = QVariant::fromValue<double>(*reinterpret_cast<double*>(octet8));
|
double tmp_value_;
|
||||||
break;
|
s >> tmp_value_;
|
||||||
|
value = QVariant::fromValue<double>(tmp_value_);
|
||||||
|
break;
|
||||||
|
}
|
||||||
case 'D':
|
case 'D':
|
||||||
{
|
{
|
||||||
QAMQP::Frame::decimal v;
|
QAMQP::Frame::decimal v;
|
||||||
|
|
@ -253,9 +261,12 @@ QVariant QAMQP::Frame::readField( qint8 valueType, QDataStream &s )
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'T':
|
case 'T':
|
||||||
s.readRawData(octet8, sizeof(octet8));
|
{
|
||||||
value = QDateTime::fromMSecsSinceEpoch(*reinterpret_cast<qulonglong*>(octet8));
|
qulonglong tmp_value_;
|
||||||
break;
|
s >> tmp_value_;
|
||||||
|
value = QDateTime::fromMSecsSinceEpoch(tmp_value_);
|
||||||
|
break;
|
||||||
|
}
|
||||||
case 'F':
|
case 'F':
|
||||||
{
|
{
|
||||||
TableField table_;
|
TableField table_;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue