ObjIRC  Check-in [fc04e870e4]

Overview
Comment:Fix channel iteration in QUIT handler
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: fc04e870e4ab6b4946fb51848dd60e6fc3e74b1120408db70f73d817f04c3627
User & Date: js on 2017-01-10 00:58:02
Other Links: manifest | tags
Context
2017-01-22
15:20
Do not run tests automatically check-in: 9a8a6a9bf9 user: js tags: trunk
2017-01-10
00:58
Fix channel iteration in QUIT handler check-in: fc04e870e4 user: js tags: trunk
2016-05-07
11:58
Add a proper build system check-in: 3bac4aa7d3 user: js tags: trunk
Changes

Modified src/IRCConnection.m from [aa59c93c3f] to [12ead9fa2b].

395
396
397
398
399
400
401
402

403
404
405
406
407
408
409
410
		who = [who substringWithRange: of_range(1, [who length] - 1)];
		user = [IRCUser IRCUserWithString: who];

		if ([components count] > 2)
			reason = [line substringWithRange:
			    of_range(pos + 2, [line length] - pos - 2)];

		for (OFMutableSet *channel in _channels)

			[channel removeObject: [user nickname]];

		if ([_delegate respondsToSelector:
		    @selector(connection:didSeeUserQuit:reason:)])
			[_delegate connection: self
			       didSeeUserQuit: user
				       reason: reason];








|
>
|







395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
		who = [who substringWithRange: of_range(1, [who length] - 1)];
		user = [IRCUser IRCUserWithString: who];

		if ([components count] > 2)
			reason = [line substringWithRange:
			    of_range(pos + 2, [line length] - pos - 2)];

		for (OFString *channel in _channels)
			[[_channels objectForKey: channel]
			    removeObject: [user nickname]];

		if ([_delegate respondsToSelector:
		    @selector(connection:didSeeUserQuit:reason:)])
			[_delegate connection: self
			       didSeeUserQuit: user
				       reason: reason];