Skip to content

Commit b914070

Browse files
ricardojlrufinocmaglie
authored andcommitted
Avoid usueless double calls to rescanLibraries()
Previously rescanLibraries() was automatically called internally in setLibrariesFolder(). This lead to double calls to rescanLibraries() when setLibrariesFolder() was used in combination with an explicit call to rescanLibraries(). This commit adds a new method setLibrariesFoldersAndRescan(..) and removes the internal call to rescanLibraries() from setLibrariesFolder(). The existing setLibrariesFolder()+rescanLibraries() combos have been replaced with setLibrariesFoldersAndRescan(). Fix #10228
1 parent cc65234 commit b914070

File tree

2 files changed

+9
-7
lines changed

2 files changed

+9
-7
lines changed

app/test/cc/arduino/contributions/UpdatableLibraryTest.java

+4-6
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,7 @@ public void testUpdatableLibrary() throws Exception {
3636
LibrariesIndexer indexer = new LibrariesIndexer(index_SD_only);
3737
BaseNoGui.librariesIndexer = indexer;
3838
indexer.parseIndex();
39-
indexer.setLibrariesFolders(folders);
40-
indexer.rescanLibraries();
39+
indexer.setLibrariesFoldersAndRescan(folders);
4140

4241
ContributedLibrary sdLib = indexer.getIndex().getInstalled("SD").get();
4342
assertTrue("SD lib is installed", sdLib.isLibraryInstalled());
@@ -46,7 +45,7 @@ public void testUpdatableLibrary() throws Exception {
4645
assertTrue(ContributionsSelfCheck.checkForUpdatableLibraries());
4746

4847
folders.add(new UserLibraryFolder(SD121, Location.SKETCHBOOK));
49-
indexer.setLibrariesFolders(folders);
48+
indexer.setLibrariesFoldersAndRescan(folders);
5049

5150
sdLib = indexer.getIndex().getInstalled("SD").get();
5251
assertTrue("SD lib is installed", sdLib.isLibraryInstalled());
@@ -63,8 +62,7 @@ public void testUpdatableLibraryWithBundled() throws Exception {
6362
LibrariesIndexer indexer = new LibrariesIndexer(index_Bridge_only);
6463
BaseNoGui.librariesIndexer = indexer;
6564
indexer.parseIndex();
66-
indexer.setLibrariesFolders(folders);
67-
indexer.rescanLibraries();
65+
indexer.setLibrariesFoldersAndRescan(folders);
6866

6967
ContributedLibrary l = indexer.getIndex().getInstalled("Bridge").get();
7068
assertTrue("Bridge lib is installed", l.isLibraryInstalled());
@@ -73,7 +71,7 @@ public void testUpdatableLibraryWithBundled() throws Exception {
7371
assertTrue(ContributionsSelfCheck.checkForUpdatableLibraries());
7472

7573
folders.add(new UserLibraryFolder(Bridge170, Location.SKETCHBOOK));
76-
indexer.setLibrariesFolders(folders);
74+
indexer.setLibrariesFoldersAndRescan(folders);
7775

7876
l = indexer.getIndex().getInstalled("Bridge").get();
7977
assertTrue("Bridge lib is installed", l.isLibraryInstalled());

arduino-core/src/cc/arduino/contributions/libraries/LibrariesIndexer.java

+5-1
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,11 @@ private void parseIndex(File file) throws IOException {
114114
}
115115

116116
public void setLibrariesFolders(List<UserLibraryFolder> folders) {
117-
librariesFolders = folders;
117+
this.librariesFolders = folders;
118+
}
119+
120+
public void setLibrariesFoldersAndRescan(List<UserLibraryFolder> folders) {
121+
setLibrariesFolders(folders);
118122
rescanLibraries();
119123
}
120124

0 commit comments

Comments
 (0)