-rw-r--r-- | kabc/vcard/ContentLine.cpp | 10 | ||||
-rw-r--r-- | kabc/vcard/VCardv.cpp | 12 | ||||
-rw-r--r-- | kabc/vcard/include/VCardDefines.h | 3 | ||||
-rw-r--r-- | kabc/vcardformatimpl.cpp | 2 |
4 files changed, 20 insertions, 7 deletions
diff --git a/kabc/vcard/ContentLine.cpp b/kabc/vcard/ContentLine.cpp index 0fb5b5d..f7e04a9 100644 --- a/kabc/vcard/ContentLine.cpp +++ b/kabc/vcard/ContentLine.cpp | |||
@@ -57,25 +57,28 @@ | |||
57 | 57 | ||
58 | #include <VCardRToken.h> | 58 | #include <VCardRToken.h> |
59 | #include <VCardContentLine.h> | 59 | #include <VCardContentLine.h> |
60 | 60 | ||
61 | #include <VCardEntity.h> | 61 | #include <VCardEntity.h> |
62 | #include <VCardEnum.h> | 62 | #include <VCardEnum.h> |
63 | #include <VCardDefines.h> | 63 | #include <VCardDefines.h> |
64 | 64 | ||
65 | using namespace VCARD; | 65 | using namespace VCARD; |
66 | 66 | ||
67 | ContentLine::ContentLine() | 67 | ContentLine::ContentLine() |
68 | :Entity(), | 68 | :Entity(), |
69 | value_(0) | 69 | value_(0), |
70 | paramType_( ParamUnknown ), | ||
71 | valueType_( ValueUnknown ), | ||
72 | entityType_( EntityUnknown ) | ||
70 | { | 73 | { |
71 | paramList_.setAutoDelete( TRUE ); | 74 | paramList_.setAutoDelete( TRUE ); |
72 | } | 75 | } |
73 | 76 | ||
74 | ContentLine::ContentLine(const ContentLine & x) | 77 | ContentLine::ContentLine(const ContentLine & x) |
75 | :Entity(x), | 78 | :Entity(x), |
76 | group_ (x.group_), | 79 | group_ (x.group_), |
77 | name_ (x.name_), | 80 | name_ (x.name_), |
78 | /*US paramList_(x.paramList_),*/ | 81 | /*US paramList_(x.paramList_),*/ |
79 | value_(x.value_->clone()), | 82 | value_(x.value_->clone()), |
80 | paramType_(x.paramType_), | 83 | paramType_(x.paramType_), |
81 | valueType_(x.valueType_), | 84 | valueType_(x.valueType_), |
@@ -88,25 +91,28 @@ ContentLine::ContentLine(const ContentLine & x) | |||
88 | for (; it.current(); ++it) | 91 | for (; it.current(); ++it) |
89 | { | 92 | { |
90 | Param *p = new Param; | 93 | Param *p = new Param; |
91 | p->setName( it.current()->name() ); | 94 | p->setName( it.current()->name() ); |
92 | p->setValue( it.current()->value() ); | 95 | p->setValue( it.current()->value() ); |
93 | paramList_.append(p); | 96 | paramList_.append(p); |
94 | } | 97 | } |
95 | 98 | ||
96 | } | 99 | } |
97 | 100 | ||
98 | ContentLine::ContentLine(const QCString & s) | 101 | ContentLine::ContentLine(const QCString & s) |
99 | :Entity(s), | 102 | :Entity(s), |
100 | value_(0) | 103 | value_(0), |
104 | paramType_( ParamUnknown ), | ||
105 | valueType_( ValueUnknown ), | ||
106 | entityType_( EntityUnknown ) | ||
101 | { | 107 | { |
102 | paramList_.setAutoDelete( TRUE ); | 108 | paramList_.setAutoDelete( TRUE ); |
103 | } | 109 | } |
104 | 110 | ||
105 | ContentLine & | 111 | ContentLine & |
106 | ContentLine::operator = (ContentLine & x) | 112 | ContentLine::operator = (ContentLine & x) |
107 | { | 113 | { |
108 | if (*this == x) return *this; | 114 | if (*this == x) return *this; |
109 | 115 | ||
110 | ParamListIterator it(x.paramList_); | 116 | ParamListIterator it(x.paramList_); |
111 | for (; it.current(); ++it) | 117 | for (; it.current(); ++it) |
112 | { | 118 | { |
diff --git a/kabc/vcard/VCardv.cpp b/kabc/vcard/VCardv.cpp index 391a69e..d19a004 100644 --- a/kabc/vcard/VCardv.cpp +++ b/kabc/vcard/VCardv.cpp | |||
@@ -179,31 +179,35 @@ VCard::_parse() | |||
179 | cur += it.current() + 1; | 179 | cur += it.current() + 1; |
180 | ++it; | 180 | ++it; |
181 | } | 181 | } |
182 | 182 | ||
183 | --it; | 183 | --it; |
184 | 184 | ||
185 | refolded.append(cur); | 185 | refolded.append(cur); |
186 | } | 186 | } |
187 | 187 | ||
188 | QStrListIterator it2(refolded); | 188 | QStrListIterator it2(refolded); |
189 | 189 | ||
190 | for (; it2.current(); ++it2) { | 190 | for (; it2.current(); ++it2) { |
191 | 191 | vDebug("New contentline using \"" + QCString(it2.current()) + "\""); | |
192 | vDebug("New contentline using \"" + QCString(it2.current()) + "\""); | ||
193 | ContentLine * cl = new ContentLine(it2.current()); | 192 | ContentLine * cl = new ContentLine(it2.current()); |
194 | 193 | ||
195 | cl->parse(); | 194 | cl->parse(); |
196 | 195 | if (cl->value() == 0) | |
197 | contentLineList_.append(cl); | 196 | { |
197 | qDebug("Content line could not be parsed. Discarded: %s" + QCString(it2.current())); | ||
198 | delete cl; | ||
199 | } | ||
200 | else | ||
201 | contentLineList_.append(cl); | ||
198 | } | 202 | } |
199 | 203 | ||
200 | /////////////////////////////////////////////////////////////// | 204 | /////////////////////////////////////////////////////////////// |
201 | // LAST LINE | 205 | // LAST LINE |
202 | 206 | ||
203 | split = endLine.find(':'); | 207 | split = endLine.find(':'); |
204 | 208 | ||
205 | if (split == -1) // invalid, no END | 209 | if (split == -1) // invalid, no END |
206 | return; | 210 | return; |
207 | 211 | ||
208 | firstPart = endLine.left(split); | 212 | firstPart = endLine.left(split); |
209 | valuePart = endLine.right(firstPart.length() - split - 1); | 213 | valuePart = endLine.right(firstPart.length() - split - 1); |
diff --git a/kabc/vcard/include/VCardDefines.h b/kabc/vcard/include/VCardDefines.h index dd38ae2..557410f 100644 --- a/kabc/vcard/include/VCardDefines.h +++ b/kabc/vcard/include/VCardDefines.h | |||
@@ -18,25 +18,26 @@ | |||
18 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | 18 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE |
19 | AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN | 19 | AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN |
20 | ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION | 20 | ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION |
21 | WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | 21 | WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
22 | */ | 22 | */ |
23 | 23 | ||
24 | #ifndef VCARD_DEFINES_H | 24 | #ifndef VCARD_DEFINES_H |
25 | #define VCARD_DEFINES_H | 25 | #define VCARD_DEFINES_H |
26 | 26 | ||
27 | #include <kdebug.h> | 27 | #include <kdebug.h> |
28 | 28 | ||
29 | #ifdef VCARD_DEBUG | 29 | #ifdef VCARD_DEBUG |
30 | #define vDebug(a) kdDebug(5710) << a << endl; | 30 | //US #define vDebug(a) kdDebug(5710) << a << endl; |
31 | #define vDebug(a) qDebug(a); | ||
31 | #else | 32 | #else |
32 | #define vDebug(a) | 33 | #define vDebug(a) |
33 | #endif | 34 | #endif |
34 | 35 | ||
35 | #if 0 | 36 | #if 0 |
36 | #ifndef NDEBUG | 37 | #ifndef NDEBUG |
37 | #include <qcstring.h> | 38 | #include <qcstring.h> |
38 | #include <iostream> | 39 | #include <iostream> |
39 | #ifdef __GNUG__ | 40 | #ifdef __GNUG__ |
40 | # define vDebug(a) cerr << className() << ":" << __FUNCTION__ << " (" \ | 41 | # define vDebug(a) cerr << className() << ":" << __FUNCTION__ << " (" \ |
41 | << __LINE__ << "): " << QCString((a)).data() << endl; | 42 | << __LINE__ << "): " << QCString((a)).data() << endl; |
42 | #else | 43 | #else |
diff --git a/kabc/vcardformatimpl.cpp b/kabc/vcardformatimpl.cpp index 2d6eb3d..1bf2cde 100644 --- a/kabc/vcardformatimpl.cpp +++ b/kabc/vcardformatimpl.cpp | |||
@@ -252,24 +252,25 @@ bool VCardFormatImpl::loadAddressee( Addressee& addressee, VCard *v ) | |||
252 | 252 | ||
253 | case EntityAgent: | 253 | case EntityAgent: |
254 | addressee.setAgent( readAgentValue( cl ) ); | 254 | addressee.setAgent( readAgentValue( cl ) ); |
255 | break; | 255 | break; |
256 | 256 | ||
257 | case EntitySound: | 257 | case EntitySound: |
258 | addressee.setSound( readSoundValue( cl, addressee ) ); | 258 | addressee.setSound( readSoundValue( cl, addressee ) ); |
259 | break; | 259 | break; |
260 | 260 | ||
261 | default: | 261 | default: |
262 | kdDebug(5700) << "VCardFormat::load(): Unsupported entity: " | 262 | kdDebug(5700) << "VCardFormat::load(): Unsupported entity: " |
263 | << int( type ) << ": " << cl->asString() << endl; | 263 | << int( type ) << ": " << cl->asString() << endl; |
264 | qDebug("VCardFormat::load(): Unsupported entity: %i: %s ", int(type), (const char*)cl->asString()); | ||
264 | break; | 265 | break; |
265 | } | 266 | } |
266 | } | 267 | } |
267 | 268 | ||
268 | for( cl = contentLines.first(); cl; cl = contentLines.next() ) { | 269 | for( cl = contentLines.first(); cl; cl = contentLines.next() ) { |
269 | EntityType type = cl->entityType(); | 270 | EntityType type = cl->entityType(); |
270 | if ( type == EntityLabel ) { | 271 | if ( type == EntityLabel ) { |
271 | int type = readAddressParam( cl ); | 272 | int type = readAddressParam( cl ); |
272 | Address address = addressee.address( type ); | 273 | Address address = addressee.address( type ); |
273 | if ( address.isEmpty() ) | 274 | if ( address.isEmpty() ) |
274 | address.setType( type ); | 275 | address.setType( type ); |
275 | 276 | ||
@@ -630,24 +631,25 @@ PhoneNumber VCardFormatImpl::readTelephoneValue( ContentLine *cl ) | |||
630 | p.setType( type ); | 631 | p.setType( type ); |
631 | 632 | ||
632 | return p; | 633 | return p; |
633 | } | 634 | } |
634 | 635 | ||
635 | QString VCardFormatImpl::readTextValue( ContentLine *cl ) | 636 | QString VCardFormatImpl::readTextValue( ContentLine *cl ) |
636 | { | 637 | { |
637 | VCARD::Value *value = cl->value(); | 638 | VCARD::Value *value = cl->value(); |
638 | if ( value ) { | 639 | if ( value ) { |
639 | return QString::fromUtf8( value->asString() ); | 640 | return QString::fromUtf8( value->asString() ); |
640 | } else { | 641 | } else { |
641 | kdDebug(5700) << "No value: " << cl->asString() << endl; | 642 | kdDebug(5700) << "No value: " << cl->asString() << endl; |
643 | qDebug("No value: %s", (const char*)(cl->asString())); | ||
642 | return QString::null; | 644 | return QString::null; |
643 | } | 645 | } |
644 | } | 646 | } |
645 | 647 | ||
646 | QDate VCardFormatImpl::readDateValue( ContentLine *cl ) | 648 | QDate VCardFormatImpl::readDateValue( ContentLine *cl ) |
647 | { | 649 | { |
648 | DateValue *dateValue = (DateValue *)cl->value(); | 650 | DateValue *dateValue = (DateValue *)cl->value(); |
649 | if ( dateValue ) | 651 | if ( dateValue ) |
650 | return dateValue->qdate(); | 652 | return dateValue->qdate(); |
651 | else | 653 | else |
652 | return QDate(); | 654 | return QDate(); |
653 | } | 655 | } |