Sandboxed Helper apps launched by NSTask cannot use NSSave/OpenPanels

Originator:recordtronic
Number:rdar://12952676 Date Originated:03-Jan-2013 05:01 PM
Status:Open Resolved:
Product:Mac OS X Product Version:10.8.2/12C60
Classification:Crash/hang/Data Loss Reproducible:Always
 
03-Jan-2013 05:01 PM Jon Gary:
Summary:
If a sandboxed application has a helper app that it launches via NSTask, the helper application cannot use NSSavePanel etc. The attached project demonstrates.

Steps to Reproduce:
- Create sandboxed app. 
- Add com.apple.security.files.user-selected.read-write entitlement
- Add helper app that uses NSOpenPanel or NSSavePanel. 
- add com.apple.security.inherit to helper.
- Have main app launch launch helper via NSTask
- Have helper use NSSavePanel

Expected Results:
- Helper can use NSSavePanel

Actual Results:
- Save panel never appears, 0 result returned after several seconds.

Regression:
Fails on 10.7.5 and 10.8.2. Works with sandbox disabled.

Notes:

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!