From: APTX Date: Wed, 23 May 2012 22:20:37 +0000 (+0200) Subject: Warn if amask/fmask bits get removed. Setting invalid bits might make break result... X-Git-Url: https://gitweb.tyo.aptx.org/?a=commitdiff_plain;h=d681d44e1e1aeb06b87af0b54b5716fef9d16802;p=anidbudpclient.git Warn if amask/fmask bits get removed. Setting invalid bits might make break result parsing. --- diff --git a/animecommand.cpp b/animecommand.cpp index 3a83a52..c31f88d 100644 --- a/animecommand.cpp +++ b/animecommand.cpp @@ -78,8 +78,15 @@ Command AnimeCommand::rawCommand() const cmd.second["aname"] = m_aname; if (m_amask) + { + if ((m_amask & AnimeFlag::AllData) != m_amask) + { + qWarning() << "Clearing invalid bits in amask"; + } + cmd.second["amask"] = QString::number(m_amask & AnimeFlag::AllData, 16) .rightJustified(14, QLatin1Char('0'));; + } return cmd; } diff --git a/filecommand.cpp b/filecommand.cpp index 931d8c9..b9d92d3 100644 --- a/filecommand.cpp +++ b/filecommand.cpp @@ -230,10 +230,19 @@ Command FileCommand::rawCommand() const cmd.second["fid"] = m_fid; } + if ((m_fmask & FileFlag::AllData) != m_fmask) + { + qWarning() << "Clearing invalid bits in fmask"; + } + if ((m_amask & FileAnimeFlag::AllData) != m_amask) + { + qWarning() << "Clearing invalid bits in fmask"; + } + // Clear any bits which aren't known and pad to 8 characters cmd.second["fmask"] = QString::number(m_fmask & FileFlag::AllData, 16) .rightJustified(10, QLatin1Char('0')); - cmd.second["amask"] = QString::number(quint32(m_amask & FileAnimeFlag::AllData), 16) + cmd.second["amask"] = QString::number(m_amask & FileAnimeFlag::AllData, 16) .rightJustified(8, QLatin1Char('0')); return cmd; @@ -315,7 +324,7 @@ void FileReply::readReplyData(const QString &reply) { if (partNo >= parts.size()) { - qWarning() << "Not enough parts in reply."; + qWarning() << "Not enough parts in reply. fmask"; continue; } fileFlagData.insert(FileFlags(flag), parts[partNo]); @@ -329,7 +338,7 @@ void FileReply::readReplyData(const QString &reply) { if (partNo >= parts.size()) { - qWarning() << "Not enough parts in reply."; + qWarning() << "Not enough parts in reply. amask"; continue; } fileAnimeFlagData.insert(FileAnimeFlags(flag), parts[partNo]);