summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRemko Tronçon <git@el-tramo.be>2011-04-20 20:36:28 (GMT)
committerRemko Tronçon <git@el-tramo.be>2011-04-20 20:37:09 (GMT)
commit1fe811468562aaf9cf1583997fb0894c0f56da15 (patch)
tree81655ef4c6e2c10c21be20cba8f0aea80d82d8ba /Swift/Controllers/Roster
parent897727deb2cfa3800621117c1de15e18cfd1400c (diff)
downloadswift-1fe811468562aaf9cf1583997fb0894c0f56da15.zip
swift-1fe811468562aaf9cf1583997fb0894c0f56da15.tar.bz2
Return groups vector by reference.
This avoids a potential crash. Resolves: #842 Release-Notes: Fixed a crash in roster handling
Diffstat (limited to 'Swift/Controllers/Roster')
-rw-r--r--Swift/Controllers/Roster/ContactRosterItem.cpp2
-rw-r--r--Swift/Controllers/Roster/ContactRosterItem.h2
2 files changed, 2 insertions, 2 deletions
diff --git a/Swift/Controllers/Roster/ContactRosterItem.cpp b/Swift/Controllers/Roster/ContactRosterItem.cpp
index c6064d6..0fe88aa 100644
--- a/Swift/Controllers/Roster/ContactRosterItem.cpp
+++ b/Swift/Controllers/Roster/ContactRosterItem.cpp
@@ -99,7 +99,7 @@ void ContactRosterItem::applyPresence(const std::string& resource, boost::shared
onDataChanged();
}
-const std::vector<std::string> ContactRosterItem::getGroups() const {
+const std::vector<std::string>& ContactRosterItem::getGroups() const {
return groups_;
}
diff --git a/Swift/Controllers/Roster/ContactRosterItem.h b/Swift/Controllers/Roster/ContactRosterItem.h
index ae8d5b0..7aa948c 100644
--- a/Swift/Controllers/Roster/ContactRosterItem.h
+++ b/Swift/Controllers/Roster/ContactRosterItem.h
@@ -36,7 +36,7 @@ class ContactRosterItem : public RosterItem {
void applyPresence(const std::string& resource, boost::shared_ptr<Presence> presence);
void clearPresence();
void calculateShownPresence();
- const std::vector<std::string> getGroups() const;
+ const std::vector<std::string>& getGroups() const;
/** Only used so a contact can know about the groups it's in*/
void addGroup(const std::string& group);
void removeGroup(const std::string& group);