jamf / aftermath

Aftermath is a free macOS IR framework
MIT License
460 stars 33 forks source link

Fix issue when collecting launchd data #62

Open bartreardon opened 4 months ago

bartreardon commented 4 months ago

Fix issue when collecting launchd data if a launchd item references a path that no longer exists.

this would previously cause an abort for trying to unwrap an optional

2.2.1 output

Could not cast value of type '__NSArrayM' (0x1f3f28d00) to 'NSString' (0x1f3f24ff0).
zsh: abort      sudo /usr/local/bin/aftermath

For example, a launchd item is created but the bundle/path it refers to is deleted then attempting to generate a sha for the path will fail. This PR updates the string variables so they aren't optionals and protects the attempt to generate a sha behind an if let with an appropriate log if the attempt fails.