From 016a98df86f22cec1da8045648760eda60b97f1e Mon Sep 17 00:00:00 2001 From: Jeff Young Date: Sun, 21 Nov 2021 18:00:49 +0000 Subject: [PATCH] Increment numbers which have suffixes too. Fixes https://gitlab.com/kicad/code/kicad/issues/9706 --- eeschema/sch_text.cpp | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/eeschema/sch_text.cpp b/eeschema/sch_text.cpp index c5d9431714..88d3a25b23 100644 --- a/eeschema/sch_text.cpp +++ b/eeschema/sch_text.cpp @@ -57,13 +57,15 @@ bool IncrementLabelMember( wxString& name, int aIncrement ) if( name.IsEmpty() ) return true; - int ii = name.Len() - 1; - - // Ignore formatting constructs - if( name.GetChar( ii ) == '}' ) - ii--; - + wxString suffix; wxString digits; + int ii = name.Len() - 1; + + while( ii >= 0 && !wxIsdigit( name.GetChar( ii ) ) ) + { + suffix = name.GetChar( ii ) + suffix; + ii--; + } while( ii >= 0 && wxIsdigit( name.GetChar( ii ) ) ) { @@ -85,7 +87,7 @@ bool IncrementLabelMember( wxString& name, int aIncrement ) if( number > -1 ) { name.Remove( ii + 1 ); - name << number; + name << number << suffix; return true; } }