void RecentItemsModel::deserializeItems(const QString &serialized) { LOG_DEBUG << "#"; QByteArray originalData; originalData.append(serialized.toLatin1()); QByteArray serializedBA = QByteArray::fromBase64(originalData); // historical reasons to have QQueue there // now only thing left is to be backward compatible QQueue<QString> items; QDataStream ds(&serializedBA, QIODevice::ReadOnly); ds >> items; Q_ASSERT(m_LRUcache.size() == 0); for (auto it = items.rbegin(); it != items.rend(); it++) { m_LRUcache.put(*it, 0); } rebuild(); emit recentItemsCountChanged(); }