Skip to content

Commit

Permalink
Fixed incorrect boards.txt preference handling when submenu id has un…
Browse files Browse the repository at this point in the history
…derscore

Fixes esp8266#2533
  • Loading branch information
cmaglie committed Jan 27, 2015
1 parent 379df90 commit e360f82
Showing 1 changed file with 14 additions and 5 deletions.
19 changes: 14 additions & 5 deletions arduino-core/src/processing/app/BaseNoGui.java
Original file line number Diff line number Diff line change
Expand Up @@ -154,18 +154,27 @@ static public PreferencesMap getBoardPreferences() {
TargetBoard board = getTargetBoard();
if (board == null)
return null;
String boardId = board.getId();

PreferencesMap prefs = new PreferencesMap(board.getPreferences());

String extendedName = prefs.get("name");
for (String menuId : board.getMenuIds()) {
if (!board.hasMenu(menuId))
continue;

// Get "custom_[MENU_ID]" preference (for example "custom_cpu")
String entry = PreferencesData.get("custom_" + menuId);
if (board.hasMenu(menuId) && entry != null &&
entry.startsWith(board.getId())) {
String selectionId = entry.substring(entry.indexOf("_") + 1);
if (entry != null && entry.startsWith(boardId)) {

String selectionId = entry.substring(boardId.length() + 1);
prefs.putAll(board.getMenuPreferences(menuId, selectionId));
prefs.put("name", prefs.get("name") + ", " +
board.getMenuLabel(menuId, selectionId));

// Update the name with the extended configuration
extendedName += ", " + board.getMenuLabel(menuId, selectionId);
}
}
prefs.put("name", extendedName);
return prefs;
}

Expand Down

0 comments on commit e360f82

Please sign in to comment.