diff --git src/wp-admin/js/widgets/media-widgets.js src/wp-admin/js/widgets/media-widgets.js
index c4f23e1cda..983d1f7cae 100644
|
|
wp.mediaWidgets = ( function( $ ) { |
708 | 708 | control.model.set( control.getModelPropsFromMediaFrame( mediaFrame ) ); |
709 | 709 | }); |
710 | 710 | |
711 | | // Disable syncing of attachment changes back to server. See <https://core.trac.wordpress.org/ticket/40403>. |
| 711 | // Disable syncing of attachment changes back to server (except for deletions). See <https://core.trac.wordpress.org/ticket/40403>. |
712 | 712 | defaultSync = wp.media.model.Attachment.prototype.sync; |
713 | | wp.media.model.Attachment.prototype.sync = function rejectedSync() { |
714 | | return $.Deferred().rejectWith( this ).promise(); |
715 | | }; |
| 713 | wp.media.model.Attachment.prototype.sync = (function( prevSync ) { |
| 714 | return function( method, model, options ) { |
| 715 | if ( 'delete' === method ) { |
| 716 | return prevSync.call( this, method, model, options ); |
| 717 | } else { |
| 718 | return $.Deferred().rejectWith( this ).promise(); |
| 719 | } |
| 720 | }; |
| 721 | })( wp.media.model.Attachment.prototype.sync ); |
716 | 722 | mediaFrame.on( 'close', function onClose() { |
717 | 723 | wp.media.model.Attachment.prototype.sync = defaultSync; |
718 | 724 | }); |