Opened 10 years ago
Closed 10 years ago
#13566 closed Bug (fixed)
No further notifications after embedbase error.
| Reported by: | Szymon Kupś | Owned by: | Szymon Kupś |
|---|---|---|---|
| Priority: | Normal | Milestone: | CKEditor 4.5.2 |
| Component: | General | Version: | 4.5.0 |
| Keywords: | Cc: |
Description
- Open http://tests.ckeditor.dev:1030/tests/plugins/autoembed/manual/autoembed
- Paste non-embeddable link: http://example.com/
- Wait till error notification is showed and close it.
- Paste embeddable link: https://www.youtube.com/watch?v=GUl9_5kK9ts
Actual result
There are no notifications about second embedding process.
Expected result
Notifications about second embedding process should be displayed as usual.
Change History (12)
comment:1 Changed 10 years ago by
| Milestone: | → CKEditor 4.5.2 |
|---|---|
| Status: | new → confirmed |
| Version: | 4.5.1 → 4.5.0 |
comment:2 Changed 10 years ago by
| Owner: | set to Szymon Kupś |
|---|---|
| Status: | confirmed → assigned |
comment:3 Changed 10 years ago by
comment:4 Changed 10 years ago by
I'm more for the second solution + fixing the embedbase as well if it's easy :>. The second solution will assure that problems like this does not happen at all, also when other (e.g. 3rd party) plugins use the aggregator. The first solution would just make our code correct, which is always nice to have.
comment:6 Changed 10 years ago by
| Status: | review → review_failed |
|---|
I pushed branch:t/13566 with some minor improvements.
The code is good. Missing things though:
- Manual test for the reported TC.
- A unit test for the reported TC.
comment:7 Changed 10 years ago by
| Status: | review_failed → review |
|---|
Pushed: branch:t/13566
Added unit test and manual test for the reported TC.
comment:8 Changed 10 years ago by
| Status: | review → review_failed |
|---|
Rebased branch:t/13566 on master.
http://tests.ckeditor.dev:1030/tests/plugins/embedbase/definition#tests%2Fplugins%2Fembedbase%2Fdefinition%20-%20test%20canceling%20handleResponse fails (Chrome, IE8,11).
comment:9 Changed 10 years ago by
| Status: | review_failed → assigned |
|---|
comment:10 Changed 10 years ago by
| Status: | assigned → review |
|---|
Pushed: branch:t/13566
Test was checking if task was done after unsuccessful request. Now embedbase is cancelling tasks on request error, so test should use task.isCanceled() method.
comment:11 Changed 10 years ago by
| Status: | review → review_passed |
|---|
comment:12 Changed 10 years ago by
| Resolution: | → fixed |
|---|---|
| Status: | review_passed → closed |
Merged git:cb014cc into master.

I think that problem lies in
_handleResponsemethod inembedbaseplugin. Request's task is marked there asdoneand later on in_handleErroris marked ascancelled. This creates situation where notification aggregator works in a unexpected way.One solution can be to call task's
done()method only if response was handled correctly.Second solution that comes to my mind is to change task behaviour:
cancel()anddone()methods should exclude themselves. This means that task that once was marked asdonecannot becancelledand other way around.