[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    branches/smb4k/1.0
From:       Alexander Reinholdt <alexander.reinholdt () kdemail ! net>
Date:       2012-12-31 15:14:02
Message-ID: 20121231151402.D7245AC80E () svn ! kde ! org
[Download RAW message or body]

SVN commit 1330244 by areinholdt:

Fix crash after several password dialogs being shown.


 M  +4 -0      ChangeLog  
 M  +18 -3     core/smb4kmounter_p.cpp  


--- branches/smb4k/1.0/ChangeLog #1330243:1330244
@@ -1,3 +1,7 @@
+Smb4K 1.0.6 (2013-01-??):
+- Fix crash in Smb4KMounter::slotAuthError() due to signals being emitted
+  from Smb4KMountJob::slotActionFinished() too often.
+
 Smb4K 1.0.5 (2012-12-26):
 - Fixed hanging of Smb4K if a custom mount prefix without a trailing
   slash was entered (closes SF ticket #28). Thanks go to Ettore Atalan
--- branches/smb4k/1.0/core/smb4kmounter_p.cpp #1330243:1330244
@@ -764,7 +764,6 @@
             /* authentication error */ )
         {
           m_auth_errors << Smb4KShare( *share );
-          emit authError( this );
         }
         else if ( (stderr.contains( "mount error 6" ) || stderr.contains( "mount \
error(6)" )) /* bad share name */ &&  share->shareName().contains( "_", \
Qt::CaseSensitive ) ) @@ -772,7 +771,6 @@
           QString share_name = share->shareName();
           share->setShareName( share_name.replace( "_", " " ) );
           m_retries << *share;
-          emit retry( this );
         }
         else if ( stderr.contains( "mount error 101" ) || stderr.contains( "mount \
error(101)" ) /* network unreachable */ )  {
@@ -782,7 +780,6 @@
         if ( stderr.contains( "Authentication error" ) )
         {
           m_auth_errors << *share;
-          emit authError( this );
         }
 #endif
         else
@@ -814,6 +811,24 @@
 
   if ( m_processed == m_shares.size() )
   {
+    if ( !m_auth_errors.isEmpty() )
+    {
+      emit authError( this );
+    }
+    else
+    {
+      // Do nothing
+    }
+
+    if ( !m_retries.isEmpty() )
+    {
+      emit retry( this );
+    }
+    else
+    {
+      // Do nothing
+    }
+	  
     // Give the operating system some time to process the mounts
     // before we invoke KMountPoint::currentMountPoints().
     QTimer::singleShot( 100, this, SLOT( slotFinishJob() ) );


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic