Changeset 8530


Ignore:
Timestamp:
May 25, 2009, 9:07:12 PM (12 years ago)
Author:
livings124
Message:

simplify file dragging - don't consider torrent creation even if verifying a .torrent file fails

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/macosx/Controller.m

    r8497 r8530  
    26942694    if ([[pasteboard types] containsObject: NSFilenamesPboardType])
    26952695    {
    2696         #warning simplify
    26972696        //check if any torrent files can be added
    26982697        BOOL torrent = NO;
     
    27022701            if ([[[NSWorkspace sharedWorkspace] typeOfFile: file error: NULL] isEqualToString: @"org.bittorrent.torrent"])
    27032702            {
     2703                torrent = YES;
    27042704                tr_ctor * ctor = tr_ctorNew(fLib);
    27052705                tr_ctorSetMetainfoFromFile(ctor, [file UTF8String]);
    2706                 switch (tr_torrentParse(ctor, NULL))
     2706                if (tr_torrentParse(ctor, NULL) == TR_OK)
    27072707                {
    2708                     case TR_OK:
    2709                         if (!fOverlayWindow)
    2710                             fOverlayWindow = [[DragOverlayWindow alloc] initWithLib: fLib forWindow: fWindow];
    2711                         [fOverlayWindow setTorrents: files];
    2712                        
    2713                         return NSDragOperationCopy;
     2708                    if (!fOverlayWindow)
     2709                        fOverlayWindow = [[DragOverlayWindow alloc] initWithLib: fLib forWindow: fWindow];
     2710                    [fOverlayWindow setTorrents: files];
    27142711                   
    2715                     case TR_EDUPLICATE:
    2716                         torrent = YES;
     2712                    return NSDragOperationCopy;
    27172713                }
    27182714                tr_ctorFree(ctor);
     
    27602756       
    27612757        //create an array of files that can be opened
    2762         NSMutableArray * filesToOpen = [[NSMutableArray alloc] init];
    27632758        NSArray * files = [pasteboard propertyListForType: NSFilenamesPboardType];
     2759        NSMutableArray * filesToOpen = [NSMutableArray arrayWithCapacity: [files count]];
    27642760        for (NSString * file in files)
    27652761        {
    27662762            if ([[[NSWorkspace sharedWorkspace] typeOfFile: file error: NULL] isEqualToString: @"org.bittorrent.torrent"])
    27672763            {
     2764                torrent = YES;
    27682765                tr_ctor * ctor = tr_ctorNew(fLib);
    27692766                tr_ctorSetMetainfoFromFile(ctor, [file UTF8String]);
    2770                 switch (tr_torrentParse(ctor, NULL))
    2771                 {
    2772                     case TR_OK:
    2773                         [filesToOpen addObject: file];
    2774                         torrent = YES;
    2775                         break;
    2776                        
    2777                     case TR_EDUPLICATE:
    2778                         torrent = YES;
    2779                 }
     2767                if (tr_torrentParse(ctor, NULL) == TR_OK)
     2768                    [filesToOpen addObject: file];
    27802769                tr_ctorFree(ctor);
    27812770            }
     
    27912780                accept = NO;
    27922781        }
    2793         [filesToOpen release];
    27942782       
    27952783        return accept;
Note: See TracChangeset for help on using the changeset viewer.