diff --git a/lib/iris/cube.py b/lib/iris/cube.py index fe24e3eeb3..917b2052b2 100644 --- a/lib/iris/cube.py +++ b/lib/iris/cube.py @@ -778,14 +778,19 @@ def __init__(self, data, standard_name=None, long_name=None, @property def share_data(self): - """Share cube data when slicing/indexing cube if True.""" + """ + Share cube data when slicing/indexing cube if True. + Setting this flag to True will realise the data payload, + if it is lazy, as lazy data cannot currently be shared across cubes. + + """ return self._share_data @share_data.setter def share_data(self, value): - # Realise the data if is hasn't already been as sharing lazy data is - # not right now possible or a usecase understood. - if self.has_lazy_data(): + # If value is True: realise the data (if is hasn't already been) as + # sharing lazy data is not possible. + if value and self.has_lazy_data(): _ = self.data self._share_data = bool(value)