38
38
import processing .app .helpers .PreferencesMap ;
39
39
40
40
import java .util .ArrayList ;
41
+ import java .util .HashMap ;
41
42
import java .util .List ;
42
43
import java .util .Map ;
43
44
@@ -61,32 +62,38 @@ public List<BoardPort> discovery() {
61
62
62
63
for (String port : ports ) {
63
64
Map <String , Object > boardData = os .resolveDeviceAttachedTo (port , BaseNoGui .packages , devicesListOutput );
64
- TargetBoard board = (TargetBoard ) boardData .get ("board" );
65
65
66
66
BoardPort boardPort = new BoardPort ();
67
67
boardPort .setAddress (port );
68
68
boardPort .setProtocol ("serial" );
69
69
70
+ String label = port ;
71
+
70
72
PreferencesMap prefs = new PreferencesMap ();
71
- prefs .put ("vid" , boardData .get ("vid" ).toString ());
72
- prefs .put ("pid" , boardData .get ("pid" ).toString ());
73
- String warningKey = "vid." + boardData .get ("vid" ).toString () + ".warning" ;
74
- String warning = board .getPreferences ().get (warningKey );
75
- prefs .put ("warning" , warning );
76
73
77
- String boardName = board .getName ();
78
- String label = port ;
79
- if (boardName != null ) {
80
- if (warning != null ) {
81
- label += " (" + boardName + " - " + _ (warning ) + ")" ;
82
- } else {
83
- label += " (" + boardName + ")" ;
74
+ if (boardData != null ) {
75
+ prefs .put ("vid" , boardData .get ("vid" ).toString ());
76
+ prefs .put ("pid" , boardData .get ("pid" ).toString ());
77
+
78
+ TargetBoard board = (TargetBoard ) boardData .get ("board" );
79
+ if (board != null ) {
80
+ String warningKey = "vid." + boardData .get ("vid" ).toString () + ".warning" ;
81
+ String warning = board .getPreferences ().get (warningKey );
82
+ prefs .put ("warning" , warning );
83
+
84
+ String boardName = board .getName ();
85
+ if (boardName != null ) {
86
+ if (warning != null ) {
87
+ label += " (" + boardName + " - " + _ (warning ) + ")" ;
88
+ } else {
89
+ label += " (" + boardName + ")" ;
90
+ }
91
+ }
92
+ boardPort .setBoardName (boardName );
84
93
}
85
94
}
86
- boardPort .setBoardName (boardName );
87
- boardPort .setLabel (label );
88
-
89
95
96
+ boardPort .setLabel (label );
90
97
boardPort .setPrefs (prefs );
91
98
92
99
res .add (boardPort );
0 commit comments