diff --git a/arduino-core/src/cc/arduino/contributions/libraries/LibrariesIndexer.java b/arduino-core/src/cc/arduino/contributions/libraries/LibrariesIndexer.java index a09eb2a46..5adcbf201 100644 --- a/arduino-core/src/cc/arduino/contributions/libraries/LibrariesIndexer.java +++ b/arduino-core/src/cc/arduino/contributions/libraries/LibrariesIndexer.java @@ -106,6 +106,10 @@ public class LibrariesIndexer { rescanLibraries(); } + public List getLibrariesFolders() { + return librariesFolders; + } + public void rescanLibraries() { // Clear all installed flags installedLibraries.clear(); diff --git a/arduino-core/src/processing/app/BaseNoGui.java b/arduino-core/src/processing/app/BaseNoGui.java index 62cfd0d68..e08207b0e 100644 --- a/arduino-core/src/processing/app/BaseNoGui.java +++ b/arduino-core/src/processing/app/BaseNoGui.java @@ -679,8 +679,9 @@ public class BaseNoGui { // Libraries located in the latest folders on the list can override // other libraries with the same name. librariesIndexer.setSketchbookLibrariesFolder(getSketchbookLibrariesFolder()); - librariesIndexer.setLibrariesFolders(librariesFolders); - librariesIndexer.rescanLibraries(); + if (librariesIndexer.getLibrariesFolders() == null || !librariesIndexer.getLibrariesFolders().equals(librariesFolders)) { + librariesIndexer.setLibrariesFolders(librariesFolders); + } populateImportToLibraryTable(); }