SLING-8006: Remove empty list of handlers if we removed the last handler from a handler list for a given path because the handler didn't activate.
diff --git a/src/main/java/org/apache/sling/resourceresolver/impl/providers/ResourceProviderTracker.java b/src/main/java/org/apache/sling/resourceresolver/impl/providers/ResourceProviderTracker.java
index 85cc1c3..97bb488 100644
--- a/src/main/java/org/apache/sling/resourceresolver/impl/providers/ResourceProviderTracker.java
+++ b/src/main/java/org/apache/sling/resourceresolver/impl/providers/ResourceProviderTracker.java
@@ -202,6 +202,9 @@
                        final List<ResourceProviderHandler> matchingHandlers = this.handlers.get(info.getPath());
                        if ( matchingHandlers != null && !matchingHandlers.isEmpty() && matchingHandlers.remove(activate) ) {
                            storage = null;
+                           if ( matchingHandlers.isEmpty() ) {
+                               this.handlers.remove(info.getPath());
+                           }
                        }
                    }
                }