diff --git a/src/librustdoc/html/static/search.js b/src/librustdoc/html/static/search.js
index 0aebb0e9d658..f6343e4c3d24 100644
--- a/src/librustdoc/html/static/search.js
+++ b/src/librustdoc/html/static/search.js
@@ -801,7 +801,8 @@ window.initSearch = function(rawSearchIndex) {
results_returned[fullId].lev =
Math.min(results_returned[fullId].lev, returned);
}
- if (index !== -1 || lev <= MAX_LEV_DISTANCE) {
+ if (typePassesFilter(typeFilter, ty.ty) &&
+ (index !== -1 || lev <= MAX_LEV_DISTANCE)) {
if (index !== -1 && paths.length < 2) {
lev = 0;
}