@@ -158,11 +158,12 @@ def _printSetting(config_type, uni_name, pref_value, repeated):
158158 config_values = getattr (config , config_type .name )
159159 if not wholeField :
160160 pref_value = getattr (config_values , pref .name )
161- repeated = pref . is_repeated
161+ repeated = getattr ( pref , " is_repeated" , pref . label == pref . LABEL_REPEATED )
162162 _printSetting (config_type , uni_name , pref_value , repeated )
163163 else :
164164 for field in config_values .ListFields ():
165- repeated = field [0 ].is_repeated
165+ fd = field [0 ]
166+ repeated = getattr (fd , "is_repeated" , fd .label == fd .LABEL_REPEATED )
166167 _printSetting (config_type , field [0 ].name , field [1 ], repeated )
167168 else :
168169 # Always show whole field for remote node
@@ -253,7 +254,7 @@ def setPref(config, comp_name, raw_val) -> bool:
253254 return False
254255
255256 # repeating fields need to be handled with append, not setattr
256- if not pref . is_repeated :
257+ if not getattr ( pref , " is_repeated" , pref . label == pref . LABEL_REPEATED ) :
257258 try :
258259 if config_type .message_type is not None :
259260 config_values = getattr (config_part , config_type .name )
0 commit comments