Skip to content

Commit 84f0c00

Browse files
committed
Increasing data sanitation in XMPPMessageArchivingCoreDataStorage
1 parent 9c813ae commit 84f0c00

File tree

2 files changed

+24
-5
lines changed

2 files changed

+24
-5
lines changed

Extensions/XEP-0136/CoreDataStorage/XMPPMessageArchiving_Contact_CoreDataObject.m

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,11 +60,18 @@ - (void)setBareJid:(XMPPJID *)bareJid
6060

6161
- (void)setBareJidStr:(NSString *)bareJidStr
6262
{
63+
if ([self.bareJidStr isEqualToString:bareJidStr])
64+
{
65+
return; // No change
66+
}
67+
6368
[self willChangeValueForKey:@"bareJid"];
6469
[self willChangeValueForKey:@"bareJidStr"];
6570

66-
self.primitiveBareJid = [XMPPJID jidWithString:bareJidStr];
67-
self.primitiveBareJidStr = bareJidStr;
71+
XMPPJID *bareJid = [[XMPPJID jidWithString:bareJidStr] bareJID];
72+
73+
self.primitiveBareJid = bareJid;
74+
self.primitiveBareJidStr = [bareJid bare];
6875

6976
[self didChangeValueForKey:@"bareJid"];
7077
[self didChangeValueForKey:@"bareJidStr"];

Extensions/XEP-0136/CoreDataStorage/XMPPMessageArchiving_Message_CoreDataObject.m

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -98,10 +98,15 @@ - (XMPPJID *)bareJid
9898

9999
- (void)setBareJid:(XMPPJID *)bareJid
100100
{
101+
if ([self.bareJid isEqualToJID:bareJid options:XMPPJIDCompareBare])
102+
{
103+
return; // No change
104+
}
105+
101106
[self willChangeValueForKey:@"bareJid"];
102107
[self willChangeValueForKey:@"bareJidStr"];
103108

104-
self.primitiveBareJid = bareJid;
109+
self.primitiveBareJid = [bareJid bareJID];
105110
self.primitiveBareJidStr = [bareJid bare];
106111

107112
[self didChangeValueForKey:@"bareJid"];
@@ -110,11 +115,18 @@ - (void)setBareJid:(XMPPJID *)bareJid
110115

111116
- (void)setBareJidStr:(NSString *)bareJidStr
112117
{
118+
if ([self.bareJidStr isEqualToString:bareJidStr])
119+
{
120+
return; // No change
121+
}
122+
113123
[self willChangeValueForKey:@"bareJid"];
114124
[self willChangeValueForKey:@"bareJidStr"];
115125

116-
self.primitiveBareJid = [XMPPJID jidWithString:bareJidStr];
117-
self.primitiveBareJidStr = bareJidStr;
126+
XMPPJID *bareJid = [[XMPPJID jidWithString:bareJidStr] bareJID];
127+
128+
self.primitiveBareJid = bareJid;
129+
self.primitiveBareJidStr = [bareJid bare];
118130

119131
[self didChangeValueForKey:@"bareJid"];
120132
[self didChangeValueForKey:@"bareJidStr"];

0 commit comments

Comments
 (0)