Qt: Fix DataPrinter hex conversions.
Add casts so that we call the unsigned version of QString::arg. We aren't modifying the byte array and want to avoid deep copies so constify it. Change-Id: I2dcdeeab87bb0f810ffd4d36d41d1e47256d487e Reviewed-on: https://code.wireshark.org/review/24901 Reviewed-by: Gerald Combs <gerald@wireshark.org> Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot Reviewed-by: Michael Mann <mmann78@netscape.net>
This commit is contained in:
parent
6ff295af01
commit
6d38bc00db
|
@ -25,7 +25,7 @@ DataPrinter::DataPrinter(QObject * parent)
|
||||||
|
|
||||||
void DataPrinter::toClipboard(DataPrinter::DumpType type, IDataPrintable * printable)
|
void DataPrinter::toClipboard(DataPrinter::DumpType type, IDataPrintable * printable)
|
||||||
{
|
{
|
||||||
QByteArray printData = printable->printableData();
|
const QByteArray printData = printable->printableData();
|
||||||
|
|
||||||
QString clipboard_text;
|
QString clipboard_text;
|
||||||
|
|
||||||
|
@ -40,7 +40,7 @@ void DataPrinter::toClipboard(DataPrinter::DumpType type, IDataPrintable * print
|
||||||
break;
|
break;
|
||||||
case DP_HexStream:
|
case DP_HexStream:
|
||||||
for (int i = 0; i < printData.length(); i++)
|
for (int i = 0; i < printData.length(); i++)
|
||||||
clipboard_text += QString("%1").arg(printData[i], 2, 16, QChar('0'));
|
clipboard_text += QString("%1").arg((uint8_t) printData[i], 2, 16, QChar('0'));
|
||||||
break;
|
break;
|
||||||
case DP_EscapedString:
|
case DP_EscapedString:
|
||||||
// Beginning quote
|
// Beginning quote
|
||||||
|
@ -54,7 +54,7 @@ void DataPrinter::toClipboard(DataPrinter::DumpType type, IDataPrintable * print
|
||||||
if (i % 16 == 0 && i != 0 && i != printData.length() - 1) {
|
if (i % 16 == 0 && i != 0 && i != printData.length() - 1) {
|
||||||
clipboard_text += QString("\" \\\n\"");
|
clipboard_text += QString("\" \\\n\"");
|
||||||
}
|
}
|
||||||
clipboard_text += QString("\\x%1").arg(printData[i], 2, 16, QChar('0'));
|
clipboard_text += QString("\\x%1").arg((uint8_t) printData[i], 2, 16, QChar('0'));
|
||||||
}
|
}
|
||||||
// End quote
|
// End quote
|
||||||
clipboard_text += QString("\"\n");
|
clipboard_text += QString("\"\n");
|
||||||
|
@ -77,7 +77,7 @@ void DataPrinter::toClipboard(DataPrinter::DumpType type, IDataPrintable * print
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void DataPrinter::binaryDump(QByteArray printData)
|
void DataPrinter::binaryDump(const QByteArray printData)
|
||||||
{
|
{
|
||||||
if (!printData.isEmpty()) {
|
if (!printData.isEmpty()) {
|
||||||
QMimeData *mime_data = new QMimeData;
|
QMimeData *mime_data = new QMimeData;
|
||||||
|
@ -110,7 +110,7 @@ int DataPrinter::hexChars()
|
||||||
return (row_width * chars_per_byte) + ((row_width - 1) / separatorInterval());
|
return (row_width * chars_per_byte) + ((row_width - 1) / separatorInterval());
|
||||||
}
|
}
|
||||||
|
|
||||||
QString DataPrinter::hexTextDump(QByteArray printData, bool showText)
|
QString DataPrinter::hexTextDump(const QByteArray printData, bool showText)
|
||||||
{
|
{
|
||||||
QString clipboard_text;
|
QString clipboard_text;
|
||||||
|
|
||||||
|
|
|
@ -23,7 +23,7 @@ class IDataPrintable
|
||||||
public:
|
public:
|
||||||
virtual ~IDataPrintable() {}
|
virtual ~IDataPrintable() {}
|
||||||
|
|
||||||
virtual QByteArray printableData() = 0;
|
virtual const QByteArray printableData() = 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
class DataPrinter : public QObject
|
class DataPrinter : public QObject
|
||||||
|
@ -51,8 +51,8 @@ public:
|
||||||
static int hexChars();
|
static int hexChars();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
QString hexTextDump(QByteArray printData, bool append_text);
|
QString hexTextDump(const QByteArray printData, bool append_text);
|
||||||
void binaryDump(QByteArray printData);
|
void binaryDump(const QByteArray printData);
|
||||||
|
|
||||||
int byteLineLength_;
|
int byteLineLength_;
|
||||||
};
|
};
|
||||||
|
|
|
@ -174,7 +174,7 @@ FieldInformation::Position FieldInformation::appendix() const
|
||||||
return pos;
|
return pos;
|
||||||
}
|
}
|
||||||
|
|
||||||
QByteArray FieldInformation::printableData()
|
const QByteArray FieldInformation::printableData()
|
||||||
{
|
{
|
||||||
QByteArray data;
|
QByteArray data;
|
||||||
|
|
||||||
|
|
|
@ -61,7 +61,7 @@ public:
|
||||||
const QString moduleName();
|
const QString moduleName();
|
||||||
QString url();
|
QString url();
|
||||||
|
|
||||||
QByteArray printableData();
|
const QByteArray printableData();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
||||||
|
|
|
@ -96,7 +96,7 @@ int FrameInformation::frameNum() const
|
||||||
return fi_->num;
|
return fi_->num;
|
||||||
}
|
}
|
||||||
|
|
||||||
QByteArray FrameInformation::printableData()
|
const QByteArray FrameInformation::printableData()
|
||||||
{
|
{
|
||||||
QByteArray data;
|
QByteArray data;
|
||||||
|
|
||||||
|
|
|
@ -51,7 +51,7 @@ public:
|
||||||
frame_data * frameData() const;
|
frame_data * frameData() const;
|
||||||
int frameNum() const;
|
int frameNum() const;
|
||||||
|
|
||||||
QByteArray printableData();
|
const QByteArray printableData();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue