summaryrefslogtreecommitdiffabout
path: root/kabc/vcard/VCardEntity.cpp
Side-by-side diff
Diffstat (limited to 'kabc/vcard/VCardEntity.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--kabc/vcard/VCardEntity.cpp23
1 files changed, 13 insertions, 10 deletions
diff --git a/kabc/vcard/VCardEntity.cpp b/kabc/vcard/VCardEntity.cpp
index 0c21e2f..0cd2086 100644
--- a/kabc/vcard/VCardEntity.cpp
+++ b/kabc/vcard/VCardEntity.cpp
@@ -2,7 +2,7 @@
libvcard - vCard parsing library for vCard version 3.0
Copyright (C) 1998 Rik Hemsley rik@kde.org
-
+
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to
deal in the Software without restriction, including without limitation the
@@ -31,16 +31,19 @@ using namespace VCARD;
VCardEntity::VCardEntity()
: Entity()
{
+ cardList_.setAutoDelete( TRUE );
}
VCardEntity::VCardEntity(const VCardEntity & x)
: Entity(x)
{
+ cardList_.setAutoDelete( TRUE );
}
VCardEntity::VCardEntity(const QCString & s)
: Entity(s)
{
+ cardList_.setAutoDelete( TRUE );
}
VCardEntity &
@@ -75,21 +78,21 @@ VCardEntity::_parse()
{
vDebug("parse");
QCString s(strRep_);
-
+
int i = s.find(QRegExp("BEGIN:VCARD", false));
-
+
while (i != -1) {
-
+
i = s.find(QRegExp("BEGIN:VCARD", false), 11);
-
+
QCString cardStr(s.left(i));
-
+
VCard * v = new VCard(cardStr);
-
+
cardList_.append(v);
-
+
v->parse();
-
+
s.remove(0, i);
}
}
@@ -98,7 +101,7 @@ VCardEntity::_parse()
VCardEntity::_assemble()
{
VCardListIterator it(cardList_);
-
+
for (; it.current(); ++it)
strRep_ += it.current()->asString() + "\r\n"; // One CRLF for luck.
}