]> granicus.if.org Git - transmission/commitdiff
cleaner fix for #4066
authorMitchell Livingston <livings124@transmissionbt.com>
Sat, 5 Mar 2011 03:19:26 +0000 (03:19 +0000)
committerMitchell Livingston <livings124@transmissionbt.com>
Sat, 5 Mar 2011 03:19:26 +0000 (03:19 +0000)
macosx/PiecesView.m

index 5bdbf027e043399e4ebd7b1d51da11ba4d79d34b..9eb65f0a9e41a0959effa63f8bb0f7a4a2bfecc8 100644 (file)
@@ -69,7 +69,17 @@ enum
 {
     [self clearView];
     
-    fTorrent = torrent;
+    fTorrent = (torrent && ![torrent isMagnet]) ? torrent : nil;
+    if (fTorrent)
+    {
+        //determine relevant values
+        fNumPieces = MIN([fTorrent pieceCount], MAX_ACROSS * MAX_ACROSS);
+        fAcross = ceil(sqrt(fNumPieces));
+        
+        const CGFloat width = [self bounds].size.width;
+        fWidth = (width - (fAcross + 1) * BETWEEN) / fAcross;
+        fExtraBorder = (width - ((fWidth + BETWEEN) * fAcross + BETWEEN)) / 2;
+    }
     
     NSImage * back = [[NSImage alloc] initWithSize: [self bounds].size];
     [back lockFocus];
@@ -94,23 +104,13 @@ enum
 
 - (void) updateView
 {
-    if (!fTorrent || [fTorrent isMagnet])
+    if (!fTorrent)
         return;
     
     //determine if first time
     const BOOL first = fPieces == NULL;
     if (first)
-    {
-        //determine relevant values
-        fNumPieces = MIN([fTorrent pieceCount], MAX_ACROSS * MAX_ACROSS);
-        fAcross = ceil(sqrt(fNumPieces));
-        
-        const CGFloat width = [self bounds].size.width;
-        fWidth = (width - (fAcross + 1) * BETWEEN) / fAcross;
-        fExtraBorder = (width - ((fWidth + BETWEEN) * fAcross + BETWEEN)) / 2;
-        
         fPieces = (int8_t *)tr_malloc(fNumPieces * sizeof(int8_t));
-    }
 
     int8_t * pieces = NULL;
     float * piecesPercent = NULL;