diff --git a/iped-engine/src/main/java/iped/engine/data/IPEDSource.java b/iped-engine/src/main/java/iped/engine/data/IPEDSource.java index 7819e955d6..ed8ac42264 100644 --- a/iped-engine/src/main/java/iped/engine/data/IPEDSource.java +++ b/iped-engine/src/main/java/iped/engine/data/IPEDSource.java @@ -421,29 +421,27 @@ private int countNumItems(Category category) { if (category.getNumItems() != -1) return category.getNumItems(); - if (!category.getChildren().isEmpty()) { - int num = 0; - for (Category child : category.getChildren()) { - num += countNumItems(child); - } - category.setNumItems(num); - - } else { - String query = IndexItem.CATEGORY + ":\"" + category.getName() + "\""; - IPEDSearcher searcher = new IPEDSearcher(this, query); - searcher.setNoScoring(true); - try { - if (this instanceof IPEDMultiSource) { - category.setNumItems(searcher.multiSearch().getLength()); - } else { - category.setNumItems(searcher.search().getLength()); - } + int num = 0; + for (Category child : category.getChildren()) { + num += countNumItems(child); + } - } catch (Exception e) { - e.printStackTrace(); + String query = IndexItem.CATEGORY + ":\"" + category.getName() + "\""; + IPEDSearcher searcher = new IPEDSearcher(this, query); + searcher.setNoScoring(true); + try { + if (this instanceof IPEDMultiSource) { + num += searcher.multiSearch().getLength(); + } else { + num += searcher.search().getLength(); } + + } catch (Exception e) { + e.printStackTrace(); } - return category.getNumItems(); + + category.setNumItems(num); + return num; } private void loadKeywords() {