diff --git a/src/mumble/ConnectDialog.cpp b/src/mumble/ConnectDialog.cpp
index c45ac6c5e..d3e6517d3 100644
--- a/src/mumble/ConnectDialog.cpp
+++ b/src/mumble/ConnectDialog.cpp
@@ -506,8 +506,10 @@ QVariant ServerItem::data(int column, int role) const {
if (uiSent > 0) {
qs += QString::fromLatin1("
| %1 | %2 |
")
- .arg(ConnectDialog::tr("Packet loss"),
- QString::fromLatin1("%1% (%2/%3)").arg(ploss, 0, 'f', 1).arg(uiRecv).arg(uiSent));
+ .arg(ConnectDialog::tr("Packet loss"), QString::fromLatin1("%1% (%2/%3)")
+ .arg(ploss, 0, 'f', 1)
+ .arg(uiSent - std::min(uiRecv, uiSent))
+ .arg(uiSent));
if (uiRecv > 0) {
qs += QString::fromLatin1("| %1 | %2 |
")
.arg(ConnectDialog::tr("Ping (80%)"),