@@ -160,31 +160,32 @@ bool DBusInterface::handleMessage(const QDBusMessage& message, const QDBusConnec
160 LauncherItem *item = static_cast<LauncherItem*>(m_launcherModel->get(index));
160 LauncherItem *item = static_cast<LauncherItem*>(m_launcherModel->get(index));
162 QVariantList retval;
162 QVariantList retval;
163+ QString cachedString = message.arguments()[1].toString();
163 if (message.member() == "Get") {
164 if (message.member() == "Get") {
164 if (!item) {
165 if (!item) {
165 return false;
166 return false;
167− if (message.arguments()[1].toString() == "count") {
168+ if (cachedString == "count") {
168 retval.append(QVariant::fromValue(QDBusVariant(item->count())));
169 retval.append(QVariant::fromValue(QDBusVariant(item->count())));
169− } else if (message.arguments()[1].toString() == "countVisible") {
170+ } else if (cachedString == "countVisible") {
170 retval.append(QVariant::fromValue(QDBusVariant(item->countVisible())));
171 retval.append(QVariant::fromValue(QDBusVariant(item->countVisible())));
171− } else if (message.arguments()[1].toString() == "progress") {
172+ } else if (cachedString == "progress") {
172 retval.append(QVariant::fromValue(QDBusVariant(item->progress())));
173 retval.append(QVariant::fromValue(QDBusVariant(item->progress())));
174 } else if (message.member() == "Set") {
175 } else if (message.member() == "Set") {
175− if (message.arguments()[1].toString() == "count") {
176+ if (cachedString == "count") {
176 int newCount = message.arguments()[2].value<QDBusVariant>().variant().toInt();
177 int newCount = message.arguments()[2].value<QDBusVariant>().variant().toInt();
177 if (!item || newCount != item->count()) {
178 if (!item || newCount != item->count()) {
178 Q_EMIT countChanged(appid, newCount);
179 Q_EMIT countChanged(appid, newCount);
179 notifyPropertyChanged("com.canonical.Unity.Launcher.Item", encodeAppId(appid), "count", QVariant(newCount));
180 notifyPropertyChanged("com.canonical.Unity.Launcher.Item", encodeAppId(appid), "count", QVariant(newCount));
181− } else if (message.arguments()[1].toString() == "countVisible") {
182+ } else if (cachedString == "countVisible") {
182 bool newVisible = message.arguments()[2].value<QDBusVariant>().variant().toBool();
183 bool newVisible = message.arguments()[2].value<QDBusVariant>().variant().toBool();
183 if (!item || newVisible != item->countVisible()) {
184 if (!item || newVisible != item->countVisible()) {
184 Q_EMIT countVisibleChanged(appid, newVisible);
185 Q_EMIT countVisibleChanged(appid, newVisible);
185 notifyPropertyChanged("com.canonical.Unity.Launcher.Item", encodeAppId(appid), "countVisible", newVisible);
186 notifyPropertyChanged("com.canonical.Unity.Launcher.Item", encodeAppId(appid), "countVisible", newVisible);
187− } else if (message.arguments()[1].toString() == "progress") {
188+ } else if (cachedString == "progress") {
188 int newProgress = message.arguments()[2].value<QDBusVariant>().variant().toInt();
189 int newProgress = message.arguments()[2].value<QDBusVariant>().variant().toInt();
189 if (!item || newProgress != item->progress()) {
190 if (!item || newProgress != item->progress()) {
190 Q_EMIT progressChanged(appid, newProgress);
191 Q_EMIT progressChanged(appid, newProgress);