Fixed permissions settings in calendar. The original code skirted around the fact that context_id in the calendar item was being set to NULL by physically copying the parent calendar's permissions and attaching them to the new item.
This messed up recurring items because the code to copy an item didn't copy the permissions, just context_id.
I changed the calendar item create code to set context_id to the calendar parent, which seems to work fine. After all this is how the perms system is meant to work ...