I'm following this tutorial as a jump start for an RSS feeder app I'm working on in Swift. I know there are some things that have changed in Swift since this tutorial, but none of them seem to explain why I'm having this issue.
Relevant Code (as far as I can tell) is as follows in my TableViewController:
override func viewDidLoad() {
super.viewDidLoad()
let url:NSURL = NSURL(string: "my.url.string")
parser = NSXMLParser(contentsOfURL: url)
parser.delegate = self
parser.parse() // <- Thread 1: EXC_BAD_ACCESS (code=1, address=0x0)
}
There doesn't seem to be a problem with the actual parser delegate methods as I put breakpoints on them and they aren't even being called before the crash.
My assumption is that it's a Swift bug, but I wanted to make sure I wasn't missing something before I go complaining to apple about it.
There seems to be an error in the automatically translated headers that assumes that qualified name spaces are always used, however, since they can be nil sometimes, it crashes.
If you use:
by making the namespace and qualifiedName parameters implicitly unwrapped (or explicitly wrapped should work as well) you should be good to go.
You'll probably have to make similar changes for any delegate methods you provide that take namespaceURI or qualifiedName parameters.
This bug is fixed in XCode Version 6.1 (6A1052c), in the same way @David has already suggested, but just for the record, it's fixed now.