diff -uwr picard-0.9.0-orig/picard/formats/vorbis.py picard-0.9.0/picard/formats/vorbis.py
--- picard-0.9.0-orig/picard/formats/vorbis.py	2007-12-16 09:44:33.000000000 -0800
+++ picard-0.9.0/picard/formats/vorbis.py	2008-07-19 19:01:39.000000000 -0700
@@ -77,8 +77,19 @@
             tags.setdefault(name.upper().encode('utf-8'), []).append(value)
         file.tags.update(tags)
         kwargs = {}
-        if self._File == mutagen.flac.FLAC and settings["remove_id3_from_flac"]:
+        if self._File == mutagen.flac.FLAC:
+            if settings["remove_id3_from_flac"]:
             kwargs["deleteid3"] = True
+            if settings["clear_existing_tags"] or settings['save_images_to_tags']:
+                file.clear_pictures()
+            if settings['save_images_to_tags']:
+                for mime, data in metadata.images:
+                    self.log.debug("Writing picture (%d bytes, %s, 3) to %r)" , len(data), mime, filename )
+                    aPicture = mutagen.flac.Picture()
+                    aPicture.data = data
+                    aPicture.type = 3
+                    aPicture.mime = mime
+                    file.add_picture( aPicture )
         try:
             file.save(**kwargs)
         except TypeError:

