self.append(curve)
if curve.driver == None:
c.identify(self.drivers)
- if curve.data == None:
+ if curve.data == None or max([d.size for d in curve.data]) == 0:
curve.load()
self._loaded.append(curve)
if len(self._loaded) > self._max_loaded:
self._relative_curve_paths = self.relative_curve_paths
self.update_curve_paths()
self._relative_curve_paths = rcp
-
+ digest = self._digest
+ self._digest = None # don't save the digest (recursive file).
yaml_string = yaml.dump(self, allow_unicode=True)
+ self._digest = digest
self.update_curve_paths()
return ('# Hooke playlist version %s\n' % self.version) + yaml_string
def load(path=None, drivers=None, identify=True, hooke=None):
"""Load a playlist from a file.
"""
- path = playlist_path(path)
+ path = os.path.expanduser(playlist_path(path))
with open(path, 'r') as f:
text = f.read()
playlist = from_string(text)