If 2 libs have same .h file, use the lib with same dir name #1853
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
When 2 libraries have a header with the same name, Arduino will use the last one it finds, because the list is built with very simple code that stores the last directory name it finds.
This has caused a lot of headaches for libraries like Adafruit_GFX where a copy is located in Robot_Control. Even with Robot_Control modified to avoid this specific conflict, the opportunity for incorrect matching is still present. ANY library that contains the file "Adafruit_GFX.h" can cause the correct library to not be used by the Arduino IDE.
This patch causes the IDE to always give preference to a library whose name matches the header file.
If 2 libraries have the same header, but neither matches the library name, the IDE will still use the last one it find. This patch only addresses the easy but most important case, where the header and library name match.