-
Bug
-
Resolution: Fixed
-
Major
-
None
hudson.model.Label.ConverterImpl does Hudson.getInstance().getLabel(reader.getValue()), presumably so there is a singleton instance of each Label type. However, when the Label is a LabelAtom this results in new LabelAtom() which calls load() which unmarshalls the object and returns to the getLabel call in ConverterImpl.. infinite loop, eventual StackOverflow.
Perhaps LabelAtom.getConfigFile() should use a different XStream instance instead of Hudson.XSTREAM? One that doesn't use Label.ConverterImpl.. then the LabelAtom.properties fields can save/load via RobustReflectionConverter.. is this the right approach?