// Determine start address for the row
uint64_t row = start / BYTES_PER_LINE;
uint64_t offset = row * BYTES_PER_LINE;
- end = std::min(end, offset + BYTES_PER_LINE);
+ end = std::min((uint64_t)end, offset + BYTES_PER_LINE);
if (with_offset)
dest->append(QString("%1 ").arg(row * BYTES_PER_LINE, 10, 16, QChar('0')).toUpper());
for (size_t i = offset; i < end; i++) {
uint8_t value = get_next_byte();
+ if ((value < 0x20) || (value > 0x7E))
+ value = '.';
+
if (i < start)
dest->append(' ');
else
val = QString::number((byte_value & 0xF), 16).toUpper();
painter.drawText(x + charWidth_, y, val);
+ if ((pos >= selectBegin_) && (pos < selectEnd_ - 1) && (i < BYTES_PER_LINE - 1))
+ painter.drawText(x + 2 * charWidth_, y, QString(' '));
+
x += 3 * charWidth_;
}