bufferSyncer checks now for valid BufferIds
[quassel.git] / src / common / buffersyncer.cpp
index cf16d8d..7fe424f 100644 (file)
@@ -32,6 +32,9 @@ QDateTime BufferSyncer::lastSeen(BufferId buffer) const {
 }
 
 bool BufferSyncer::setLastSeen(BufferId buffer, const QDateTime &time) {
+  if(!_lastSeen.contains(buffer))
+    return false;
+  
   if(_lastSeen[buffer] < time) {
     _lastSeen[buffer] = time;
     emit lastSeenSet(buffer, time);
@@ -60,3 +63,13 @@ void BufferSyncer::requestSetLastSeen(BufferId buffer, const QDateTime &time) {
   if(setLastSeen(buffer, time)) emit setLastSeenRequested(buffer, time);
 }
 
+
+void BufferSyncer::requestRemoveBuffer(BufferId buffer) {
+  emit removeBufferRequested(buffer);
+}
+
+void BufferSyncer::removeBuffer(BufferId buffer) {
+  if(_lastSeen.contains(buffer))
+    _lastSeen.remove(buffer);
+  emit bufferRemoved(buffer);
+}