diff --git a/common/common.cpp b/common/common.cpp index 9f78186a38..120b826629 100644 --- a/common/common.cpp +++ b/common/common.cpp @@ -89,6 +89,7 @@ int g_GhostColor; * Please: if you change a value, remember these values are carefully chosen * to have good results in pcbnew, that uses the ORed value of basic colors * when displaying superimposed objects + * The NULL value of the last item can be used as an end of list item */ StructColors ColorRefs[NBCOLOR] = { diff --git a/common/selcolor.cpp b/common/selcolor.cpp index 3e3ff6e2d9..257b7ff34e 100644 --- a/common/selcolor.cpp +++ b/common/selcolor.cpp @@ -98,7 +98,7 @@ WinEDA_SelColorFrame::WinEDA_SelColorFrame( wxWindow* parent, MainBoxSizer = new wxBoxSizer( wxHORIZONTAL ); OuterBoxSizer->Add( MainBoxSizer, 1, wxGROW | wxLEFT | wxRIGHT | wxTOP, 5 ); - for( ii = 0; ColorRefs[ii].m_Name != NULL; ii++ ) + for( ii = 0; ColorRefs[ii].m_Name != NULL && ii < NBCOLOR; ii++ ) { // Provide a separate column for every eight buttons (and their // associated text strings), so provide a FlexGrid Sizer with diff --git a/include/colors.h b/include/colors.h index e295c29e6a..ba0be9a77a 100644 --- a/include/colors.h +++ b/include/colors.h @@ -82,7 +82,7 @@ struct StructColors int m_LightColor; }; - +// list of existing Colors: extern StructColors ColorRefs[NBCOLOR]; /**