]> scripts.mit.edu Git - autoinstalls/wordpress.git/blobdiff - wp-includes/js/wp-emoji.js
WordPress 4.4.1-scripts
[autoinstalls/wordpress.git] / wp-includes / js / wp-emoji.js
index 4acf43421d7fe9905a0cc359ca91bab142a7fb71..6fa00c2e6fbfd177c94c02cf75604e1719189841 100644 (file)
@@ -58,7 +58,8 @@
                                                        ii === 1 && removedNodes.length === 1 &&
                                                        addedNodes[0].nodeType === 3 &&
                                                        removedNodes[0].nodeName === 'IMG' &&
-                                                       addedNodes[0].data === removedNodes[0].alt
+                                                       addedNodes[0].data === removedNodes[0].alt &&
+                                                       'load-failed' === removedNodes[0].getAttribute( 'data-error' )
                                                ) {
                                                        return;
                                                }
                                                        return false;
                                        }
 
-                                       if ( ! settings.supports.flag && settings.supports.simple &&
+                                       if ( ! settings.supports.flag && settings.supports.simple && settings.supports.unicode8 && settings.supports.diversity &&
                                                ! /^1f1(?:e[6-9a-f]|f[0-9a-f])-1f1(?:e[6-9a-f]|f[0-9a-f])$/.test( icon ) ) {
 
                                                return false;
                                        }
 
                                        return ''.concat( options.base, icon, options.ext );
+                               },
+                               onerror: function() {
+                                       if ( twemoji.parentNode ) {
+                                               this.setAttribute( 'data-error', 'load-failed' );
+                                               twemoji.parentNode.replaceChild( document.createTextNode( twemoji.alt ), twemoji );
+                                       }
                                }
                        };
 
                 * Initialize our emoji support, and set up listeners.
                 */
                if ( settings ) {
-                       replaceEmoji = ! settings.supports.simple || ! settings.supports.flag;
+                       replaceEmoji = ! settings.supports.simple || ! settings.supports.flag || ! settings.supports.unicode8 || ! settings.supports.diversity;
 
                        if ( settings.DOMReady ) {
                                load();