Open Bug 1493433 Opened 6 years ago Updated 7 months ago

Asynchronous free/busy requests break [NS_NOINTERFACE: Component does not have requested interface [calIOperation.id] calendar-event-dialog-attendees.js]

Categories

(Calendar :: General, defect)

Lightning 6.2
defect

Tracking

(Not tracked)

UNCONFIRMED

People

(Reporter: cranes_04_gushing, Unassigned)

Details

User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0 Safari/605.1.15

Steps to reproduce:

1. Make sure you have active free/busy provider which requests availability data asynchronously (e.g., CalDAV calendar connected to server with scheduling capabilities).
2. Create new event and open it.
3. Invite attendees.
4. Enter an email address of new attendee (enter email address for which you verified that you can retrieve availability info).


Actual results:

Free/busy information is never resolved.


Expected results:

Free/busy information is resolved.
We stumbled on this issue while we tried to update our extension for Thunderbird 60/Lightning 6.2… The issue, which probably prevents free/busy from displaying and which is visible in Error Console follows:

NS_NOINTERFACE: Component does not have requested interface [calIOperation.id] calendar-event-dialog-attendees.js:998
	onResult/this.mBinding.mPendingRequests< chrome://calendar/content/calendar-event-dialog-attendees.js:998:91
	filter self-hosted:311:17
	onResult chrome://calendar/content/calendar-event-dialog-attendees.js:998:46
	notifyResult resource://calendar/calendar-js/calFreeBusyService.js:29:13
	onResult resource://calendar/calendar-js/calFreeBusyService.js:45:17
	calEee_getFreeBusy_onResult file:///Users/frzng/Developer/IsFreeBusy/thunderbird-dev/freebusy@zonio.net/components/provider.js:84:7
	getFreebusy/performRequest/< resource://zoniofreebusy/modules/request.jsm:139:9
	editAttendees chrome://lightning/content/lightning-item-iframe.js:1833:5
	receiveMessage chrome://lightning/content/lightning-item-iframe.js:189:31

When I tried to further debug the code, it is clear that requests stored at chrome://calendar/content/calendar-event-dialog-freebusy.xml:1295:31 do not carry their interface between calendar-event-dialog-freebusy.xml and calFreeBusyListener in calendar-event-dialog-attendees.js.

Unfortunatelly, we can’t spend additional time on this at the moment… I’m pretty sure this issue affects not just our extension, but also built-in CalDAL provider as we follow practically the same runtime path.
Summary: free/busy → Asynchronous free/busy requests break
Summary: Asynchronous free/busy requests break → Asynchronous free/busy requests break [NS_NOINTERFACE: Component does not have requested interface [calIOperation.id] calendar-event-dialog-attendees.js]
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.