Stop log_backtrace() from looping in some (all? rare? whatever) cases
[quassel.git] / src / common / syncableobject.cpp
index 426bc86..248ccc9 100644 (file)
@@ -37,10 +37,19 @@ SyncableObject::SyncableObject(QObject *parent)
 SyncableObject::SyncableObject(const SyncableObject &other, QObject *parent)
   : QObject(parent),
     _initialized(other._initialized),
-    _allowClientUpdates(false)
+    _allowClientUpdates(other._allowClientUpdates)
 {
 }
 
+SyncableObject &SyncableObject::operator=(const SyncableObject &other) {
+  if(this == &other)
+    return *this;
+
+  _initialized = other._initialized;
+  _allowClientUpdates = other._allowClientUpdates;
+  return *this;
+}
+
 bool SyncableObject::isInitialized() const {
   return _initialized;
 }
@@ -101,7 +110,7 @@ void SyncableObject::fromVariantMap(const QVariantMap &properties) {
       iterator++;
       continue;
     }
-    
+
     int propertyIndex = meta->indexOfProperty(propName.toAscii());
 
     if(propertyIndex == -1 || !meta->property(propertyIndex).isWritable())