From 673c61506e76235dc7e1dd307d4d21465c1b503d Mon Sep 17 00:00:00 2001 From: Akos Kitta Date: Mon, 20 Jul 2020 15:40:58 +0200 Subject: [PATCH] GH-262: Added workaround for duplicate board names Non-unique board names per core caused an issue in the boards config. Closes: arduino/arduino-pro-ide#262 Signed-off-by: Akos Kitta --- .../src/browser/boards/boards-config.tsx | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/arduino-ide-extension/src/browser/boards/boards-config.tsx b/arduino-ide-extension/src/browser/boards/boards-config.tsx index 42bdaa52..6ae778f2 100644 --- a/arduino-ide-extension/src/browser/boards/boards-config.tsx +++ b/arduino-ide-extension/src/browser/boards/boards-config.tsx @@ -178,13 +178,24 @@ export class BoardsConfig extends React.Component(); + const toKey = ({ name, packageName, fqbn }: Board.Detailed) => !!fqbn ? `${name}-${packageName}-${fqbn}` : `${name}-${packageName}`; + for (const board of Board.decorateBoards(selectedBoard, searchResults)) { + const key = toKey(board); + if (!distinctBoards.has(key)) { + distinctBoards.set(key, board); + } + } + return
- {Board.decorateBoards(selectedBoard, searchResults).map(board => + {Array.from(distinctBoards.values()).map(board => key={`${board.name}-${board.packageName}`} item={board} label={board.name}