launchctl fails to parse JSON property lists

Originator:martin.kuehl
Number:rdar://23486380 Date Originated:10-Nov-2015 09:43 PM
Status:Open Resolved:
Product:OS X Product Version:Darwin Bootstrapper Version 3.0.0: Sat Aug 22 17:50:12 PDT 2015; root:libxpc_executables-755.1.19~16/launchd/RELEASE_X86_64
Classification:Enhancement Reproducible:Always
 
Summary:
launchctl fails to parse property list files in the JSON or ASCII format

Steps to Reproduce:
1. Create service property list in ~/Library/LaunchAgents/local.service.plist
2. Convert service property list to JSON: `plutil -convert json ~/Library/LaunchAgents/local.service.plist`
3. Load service property list with launchctl: `launchctl load ~/Library/LaunchAgents/local.service.plist`

Expected Results:
launchctl loads the property list and registers the defined service with launchd

Actual Results:
launchctl aborts with the error message: “Invalid property list”

Regression:
The problem always occurs.

Notes:
Both xml1 and binary1 formats work fine, json and old-style ascii don’t, even though `plutil -lint` parses the files just fine and can even convert them back to xml1 or binary1, after which launchctl accepts the files again.

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!