Index: src/wp-includes/js/media/models/attachments.js
===================================================================
--- src/wp-includes/js/media/models/attachments.js	(revision 32919)
+++ src/wp-includes/js/media/models/attachments.js	(working copy)
@@ -491,20 +491,27 @@
 		 * @returns {Boolean}
 		 */
 		type: function( attachment ) {
-			var type = this.props.get('type'), atts = attachment.toJSON(), mime, found;
+			// Return of the type is not defined
+            if( ! this.props.get("type") ) {
+                return true;
+            }
 
-			mime = atts.mime || ( atts.file && atts.file.type ) || '';
+            var type = this.props.get('type'),
+                attachmentType = attachment.get("type"), found;
 
-			if ( _.isArray( type ) ) {
-				found = ! type.length || _.find( type, function (t) {
-					return -1 !== mime.indexOf( t );
-				} );
-			} else {
-				found = ! type || -1 !== mime.indexOf( type );
-			}
+            //Chek if the define mime type is array. 
+            //If yes, loop though each and compare
+            if ( _.isArray( type ) ) {
+                found = _.find( type, function (t) {
+                        return -1 !== t.indexOf( attachmentType );
+                } );
+            } else {
+                found = -1 !== type.indexOf( attachmentType );
+            }
 
-			return found;
-		},
+            return found;
+
+        },
 		/**
 		 * @static
 		 * @param {wp.media.model.Attachment} attachment
Index: src/wp-includes/js/media-models.js
===================================================================
--- src/wp-includes/js/media-models.js	(revision 32919)
+++ src/wp-includes/js/media-models.js	(working copy)
@@ -895,20 +895,27 @@
 		 * @returns {Boolean}
 		 */
 		type: function( attachment ) {
-			var type = this.props.get('type'), atts = attachment.toJSON(), mime, found;
+            // Return of the type is not defined
+            if( ! this.props.get("type") ) {
+                return true;
+            }
 
-			mime = atts.mime || ( atts.file && atts.file.type ) || '';
+            var type = this.props.get('type'),
+                attachmentType = attachment.get("type"), found;
 
-			if ( _.isArray( type ) ) {
-				found = ! type.length || _.find( type, function (t) {
-					return -1 !== mime.indexOf( t );
-				} );
-			} else {
-				found = ! type || -1 !== mime.indexOf( type );
-			}
+            //Chek if the define mime type is array. 
+            //If yes, loop though each and compare
+            if ( _.isArray( type ) ) {
+                found = _.find( type, function (t) {
+                        return -1 !== t.indexOf( attachmentType );
+                } );
+            } else {
+                found = -1 !== type.indexOf( attachmentType );
+            }
 
-			return found;
-		},
+            return found;
+
+        },
 		/**
 		 * @static
 		 * @param {wp.media.model.Attachment} attachment
