[354644] Search Component doesn't work for Project and Workspace search scopes
diff --git a/bundles/org.eclipse.wst.xml.core/src-search/org/eclipse/wst/xml/core/internal/search/XMLSearchPattern.java b/bundles/org.eclipse.wst.xml.core/src-search/org/eclipse/wst/xml/core/internal/search/XMLSearchPattern.java
index 293d1c3..7bc2a6a 100644
--- a/bundles/org.eclipse.wst.xml.core/src-search/org/eclipse/wst/xml/core/internal/search/XMLSearchPattern.java
+++ b/bundles/org.eclipse.wst.xml.core/src-search/org/eclipse/wst/xml/core/internal/search/XMLSearchPattern.java
@@ -106,7 +106,10 @@
 	public boolean matches(XMLSearchPattern pattern) {
 		if (pattern.searchName == null)
 			return false;
-		
+		if ("*".equals(searchName) && "*".equals(searchNamespace)) { //$NON-NLS-1$ //$NON-NLS-2$
+			return true;
+		}
+
 		final StringTokenizer tokenizer = new StringTokenizer(pattern.searchName);
 		 while (tokenizer.hasMoreTokens()) {
 			 final String token = tokenizer.nextToken();
@@ -118,14 +121,13 @@
 				 name = token.substring(n+1);
 				 namespace = pattern.element != null ? (String)pattern.element.getNamespaceMap().get(prefix) : computeNamespaceForPrefix(pattern.domElement, prefix);
 			 }
-			 if ("*".equals(name))
-				 return true;
+
 			 if (namespace == null) {
-				 if (name.equals(searchName))
+				 if (name.equals(searchName) || "*".equals(searchName))
 					 return true;
 			 }
 			 else {
-				 if (name.equals(searchName) && namespace.equals(searchNamespace))
+				 if ((namespace.equals(searchNamespace) || "*".equals(searchNamespace)) && name.equals(searchName))
 					 return true;
 			 }
 		 }