From: Marcus Eggenberger Date: Mon, 14 Apr 2008 12:08:18 +0000 (+0000) Subject: some boundary checks (prevents erroneous/bad clients from crashing the core) X-Git-Tag: 0.2.0-beta1~52 X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=commitdiff_plain;h=31bc2be0785c614dead827c849ff8f6f3a0cff6a some boundary checks (prevents erroneous/bad clients from crashing the core) --- diff --git a/src/common/bufferviewconfig.cpp b/src/common/bufferviewconfig.cpp index d54097d4..1affaba7 100644 --- a/src/common/bufferviewconfig.cpp +++ b/src/common/bufferviewconfig.cpp @@ -131,6 +131,11 @@ void BufferViewConfig::initSetBufferList(const QList &buffers) { void BufferViewConfig::addBuffer(const BufferId &bufferId, int pos) { if(_buffers.contains(bufferId)) return; + + if(pos < 0) + pos = 0; + if(pos > _buffers.count()) + pos = _buffers.count(); _buffers.insert(pos, bufferId); emit bufferAdded(bufferId, pos); @@ -140,6 +145,11 @@ void BufferViewConfig::moveBuffer(const BufferId &bufferId, int pos) { if(!_buffers.contains(bufferId)) return; + if(pos < 0) + pos = 0; + if(pos >= _buffers.count()) + pos = _buffers.count() - 1; + _buffers.move(_buffers.indexOf(bufferId), pos); emit bufferMoved(bufferId, pos); } diff --git a/version.inc b/version.inc index e25d6762..f2f85670 100644 --- a/version.inc +++ b/version.inc @@ -5,7 +5,7 @@ quasselVersion = "0.2.0-beta1-pre"; quasselDate = "2008-04-14"; - quasselBuild = 736; + quasselBuild = 738; //! Minimum client build number the core needs clientBuildNeeded = 731;