[wp-trac] [WordPress Trac] #53529: Block based widget admin screen causes a NS_ERROR_FAILURE error in Firefox

WordPress Trac noreply at wordpress.org
Sat Feb 5 03:46:34 UTC 2022


#53529: Block based widget admin screen causes a NS_ERROR_FAILURE error in Firefox
-------------------------------------+-------------------------------------
 Reporter:  walterebert              |       Owner:  (none)
     Type:  defect (bug)             |      Status:  reopened
 Priority:  normal                   |   Milestone:  Future Release
Component:  Customize                |     Version:  5.8
 Severity:  major                    |  Resolution:
 Keywords:  needs-testing needs-     |     Focuses:  javascript, coding-
  patch                              |  standards
-------------------------------------+-------------------------------------
Changes (by jqz):

 * component:  Emoji => Customize


Comment:

 There are multiple issues here.

 The Customizer communicates with its child iframe, but upon detecting an
 error removes all content from the page, including the child iframe
 itself.  There is no reason AFAICS for it to do this, and it makes it hard
 to debug.  The Customizer also removes controls from the parent frame if
 they are not defined in the child frame (e.g. try adding a setting/control
 conditional on `is_admin()`).  Is there any reason for all this?

 The actual exception seems to be in `emojiSetsRenderIdentically()`, which
 uses `Canvas`.  This function needs to be able to handle exceptions.

 However, if the Customizer parent didn't bomb out upon this, there
 wouldn't be too much of a problem.  Because it does, the Customizer can't
 be used when this error is occuring.

 Two fixes are needed:
 - Handle exception in `emojiSetsRenderIdentically()`, somehow;
 - Stop Customizer removing content based on messages from child iframe (or
 if content is removed, make damn sure it's correct to do so).

-- 
Ticket URL: <https://core.trac.wordpress.org/ticket/53529#comment:19>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform


More information about the wp-trac mailing list