Skip to content

HPPViewControllerFailedWithError delegate function in HPPManager.swift should not be private #27

@kevinpalsermtc

Description

@kevinpalsermtc

We saw a crash:

2020-06-09 08:07:10.473734+0100 snappy[11437:2988605] WF: _WebFilterIsActive returning: NO
2020-06-09 08:07:10.474902+0100 snappy[11437:2988605] [ProcessSwapping] 0x11b6181a8 - ProvisionalPageProxy::didFailProvisionalLoadForFrame: pageProxyID=19 webPageID=30, frameID=3, navigationID=3
2020-06-09 08:07:10.475378+0100 snappy[11437:2988605] -[RXPiOS.HPPManager HPPViewControllerFailedWithError:]: unrecognized selector sent to instance 0x11e186280
2020-06-09 08:07:10.492547+0100 snappy[11437:2988605] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[RXPiOS.HPPManager HPPViewControllerFailedWithError:]: unrecognized selector sent to instance 0x11e186280'

Looking at HPPManager it is obvious that:

    private func HPPViewControllerFailedWithError(_ error: Error?) {
        self.delegate?.HPPManagerFailedWithError!(error as NSError?)
        self.genericDelegate?.HPPManagerFailedWithError(error)
        self.hppViewController.dismiss(animated: true, completion: nil)
    }

should be:

    func HPPViewControllerFailedWithError(_ error: NSError?) {
        self.delegate?.HPPManagerFailedWithError!(error as NSError?)
        self.genericDelegate?.HPPManagerFailedWithError(error)
        self.hppViewController.dismiss(animated: true, completion: nil)
    }

Someone used Error instead of NSError as the parameter and to silence the Xcode warning they clicked "fix" making the function private.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions