From 269778a3983bc56b02c921a306b257b18fe16c47 Mon Sep 17 00:00:00 2001 From: "W. Trevor King" Date: Tue, 23 Jun 2009 19:59:50 -0400 Subject: [PATCH] Use generator instead of default for libbe.bug.Bug.extra_strings. This avoids the problems associated with mutable defaults. --- libbe/bug.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/libbe/bug.py b/libbe/bug.py index 89c0266..0f912cf 100644 --- a/libbe/bug.py +++ b/libbe/bug.py @@ -185,6 +185,8 @@ class Bug(settings_object.SavedSettingsObject): fset=_set_time, doc="An integer version of .time_string") + def _extra_strings_generator(self): + return [] def _extra_strings_check_fn(value): "Require an iterable full of strings" if not hasattr(value, "__iter__"): @@ -198,7 +200,7 @@ class Bug(settings_object.SavedSettingsObject): self._prop_save_settings(old, new) @_versioned_property(name="extra_strings", doc="Space for an array of extra strings. Useful for storing state for functionality implemented purely in becommands/.py.", - default=[], + generator=_extra_strings_generator, check_fn=_extra_strings_check_fn, change_hook=_extra_strings_change_hook, mutable=True) -- 2.26.2