Revision 576759
Go back to digest for 27th August 2006Features in Multimedia
Introduces a number of new things:
1) A transactional algorithm to safely modify files (with either complete success or complete failure) has been implemented to make saving tags safe(r?). This is contained in the new helper class MetaBundleSaver. Class usage is easy: create an instance, call prepareToSave() to get a taglib fileref pointer, do you work on that fileref, call doSave(), then cleanupSave(). Cleanup is separate in case you decide not to do the doSave()
call after all, for instance if you encounter an error when working with the fileref.
2) MetaBundle gets a new method: safeSave(). Call safeSave() in place of save() to transparently use this transactional save method. This will update the same tag fields as a call to save() does.
Note there are some minor bugs to be worked out with MetaBundleSaver, namely that it seems to sometimes miss KIO's signals, but other than that it seems to work well.
File Changes
- /trunk/extragear/multimedia/amarok/src
- /Makefile.am
- /metabundle.cpp
- /metabundle.h