Dont let exception escape MediaSetAccess dtor (bnc #415017)
authorMichael Andres <ma@suse.de>
Wed, 6 Aug 2008 14:24:46 +0000 (14:24 +0000)
committerMichael Andres <ma@suse.de>
Wed, 6 Aug 2008 14:24:46 +0000 (14:24 +0000)
package/libzypp.changes
zypp/MediaSetAccess.cc

index 66b4623..b66aeb6 100644 (file)
@@ -1,4 +1,10 @@
 -------------------------------------------------------------------
+Wed Aug  6 16:23:27 CEST 2008 ma@suse.de
+
+- Don't let exception escape MediaSetAccess dtor (bnc #415017)
+- revision 10763
+
+-------------------------------------------------------------------
 Mon Aug  4 19:34:27 CEST 2008 ma@suse.de
 
 - Add new product attributes (flavor,referencePackage).
index 3cd0745..73472a3 100644 (file)
@@ -44,7 +44,11 @@ IMPL_PTR_TYPE(MediaSetAccess);
 
   MediaSetAccess::~MediaSetAccess()
   {
-    release();
+    try
+    {
+      release();
+    }
+    catch(...) {} // don't let exception escape a dtor.
   }
 
 
@@ -88,14 +92,14 @@ IMPL_PTR_TYPE(MediaSetAccess);
   {
     media::MediaManager media_mgr;
     media::MediaAccessId media;
-  
+
     media = getMediaAccessId( media_nr);
     DBG << "Going to release file " << file
         << " from media number " << media_nr << endl;
-      
+
     if ( ! media_mgr.isAttached(media) )
       return; //disattached media is free
-      
+
     media_mgr.releaseFile (media, file);
   }