Changeset 1112 for trunk/dll/init.c


Ignore:
Timestamp:
Aug 24, 2008, 5:13:20 AM (17 years ago)
Author:
Gregg Young
Message:

Check free space on TMP & FM2 save directory drives at start up (Ticket 268)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/dll/init.c

    r1104 r1112  
    5555  20 Jul 08 GKY Add support to delete orphaned tmp directories without deleting tmp of other
    5656                running sessions
     57  23 Aug 08 GKY Check that space on TMP & FM2 save drives exceed 5 GiB; Done to allow user setting of
     58                minimum size in future
    5759
    5860***********************************************************************/
     
    716718    }
    717719  }
    718   BldFullPathName(ArcTempRoot, pTmpDir, fAmAV2 ? "$AV$ARC$" : "$FM$ARC$");
    719720
    720721  //Save the FM2 save directory name. This is the location of the ini, dat files etc.
     
    724725    pFM2SaveDirectory = xstrdup(temp, pszSrcFile, __LINE__);
    725726  }
     727  {
     728    CHAR szKBTmp[20];
     729
     730    ullTmpSpaceNeeded = 5120000;
     731    CommaFmtULL(szKBTmp, sizeof(szKBTmp),
     732                ullTmpSpaceNeeded, 'M');
     733    printf("%s\r", szKBTmp); fflush(stdout);
     734    if (pTmpDir && CheckDriveSpaceAvail(pTmpDir, ullTmpSpaceNeeded, 0) == 1) {
     735      if (CheckDriveSpaceAvail(pFM2SaveDirectory, ullTmpSpaceNeeded, 0) == 0){
     736        ret = saymsg(MB_YESNO,
     737                     HWND_DESKTOP,
     738                     NullStr,
     739                     GetPString(IDS_TMPDRIVESPACELIMITED),
     740                     pTmpDir,
     741                     szKBTmp);
     742        if (ret == MBID_YES)
     743          pTmpDir = pFM2SaveDirectory;
     744      }
     745      else
     746        saymsg(MB_OK,
     747               HWND_DESKTOP,
     748               NullStr,
     749               GetPString(IDS_SAVETMPDRIVESPACELIMITED),
     750               pTmpDir,
     751               szKBTmp,
     752               pFM2SaveDirectory,
     753               szKBTmp);
     754    }
     755    else if (CheckDriveSpaceAvail(pFM2SaveDirectory, ullTmpSpaceNeeded, 0) == 1)
     756      saymsg(MB_OK,
     757             HWND_DESKTOP,
     758             NullStr,
     759             GetPString(IDS_SAVEDRIVESPACELIMITED),
     760             pFM2SaveDirectory,
     761             szKBTmp);
     762  }
     763  BldFullPathName(ArcTempRoot, pTmpDir, fAmAV2 ? "$AV$ARC$" : "$FM$ARC$");
    726764
    727765  // initialize random number generator
Note: See TracChangeset for help on using the changeset viewer.