Skip to content

Commit 562a4c3

Browse files
committed
improve custom parameter late processing order
Signed-off-by: Zen <[email protected]>
1 parent e0b1fb8 commit 562a4c3

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

src/ugrd/initramfs_dict.py

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -136,8 +136,6 @@ def _process_custom_parameters(self, parameter_name: str, parameter_type: type)
136136
case _: # For strings and things, don't init them so they are None
137137
self.logger.debug("Leaving '%s' as None" % parameter_name)
138138

139-
self._process_unprocessed(parameter_name)
140-
141139
def _process_unprocessed(self, parameter_name: str) -> None:
142140
""" Processes queued values for a parameter. """
143141
if parameter_name not in self['_processing']:
@@ -240,7 +238,8 @@ def _process_modules(self, module: str) -> None:
240238
self.logger.debug("[%s] Processing imports: %s" % (module, imports))
241239
self['imports'] = imports
242240

243-
if custom_parameters := module_config.get('custom_parameters'):
241+
custom_parameters = module_config.get('custom_parameters', {})
242+
if custom_parameters:
244243
self.logger.debug("[%s] Processing custom parameters: %s" % (module, custom_parameters))
245244
self['custom_parameters'] = custom_parameters
246245

@@ -251,6 +250,10 @@ def _process_modules(self, module: str) -> None:
251250
self.logger.debug("[%s] Setting '%s' to: %s" % (module, name, value))
252251
self[name] = value
253252

253+
# If custom paramters were added, process unprocessed values
254+
for custom_parameter in custom_parameters:
255+
self._process_unprocessed(custom_parameter)
256+
254257
# Append the module to the list of loaded modules, avoid recursion
255258
self['modules'].append(module)
256259

0 commit comments

Comments
 (0)