Skip to content

[SR-6810] Timer does not fire in Linux, if added into .commonModes #4263

Open
@swift-ci

Description

@swift-ci
Previous ID SR-6810
Radar None
Original Reporter ttflee (JIRA User)
Type Bug

Attachment: Download

Environment

Ubuntu 14.04, 16.04

Swift 4.0.3

Additional Detail from JIRA
Votes 0
Component/s Foundation
Labels Bug, Linux
Assignee @millenomi
Priority Medium

md5: 8a1f53554802145e87b26cf3d865b8f8

Issue Description:

Timer added to .commonModes could not be fired in Ubuntu 14.04/Swift 4.0.3 RELEASE. On the contrary, Dispatch Source Timer does work smoothly.

The open sourced implementations of CFRunLoopAddSource(), CFRunLoopAddObserver(), CFRunLoopAddTimer() etc., compare modeName against kCFRunLoopCommonModes using identity (==) rather than equality (CFEqual()). This might be the root cause of the issue and others.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions