Changeset 1089 for trunk/dll/init.c
- Timestamp:
- Jul 21, 2008, 12:42:39 AM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/dll/init.c
r1083 r1089 53 53 19 Jul 08 GKY Use pFM2SaveDirectory, MakeTempName and move temp files to TMP subdirectory if (TMP). 54 54 20 Jul 08 JBS Ticket 114: Support user-selectable env. strings in Tree container. 55 20 Jul 08 GKY Add support to delete orphaned tmp directories without deleting tmp of other 56 running sessions 55 57 56 58 ***********************************************************************/ … … 523 525 strcat(s, "\\"); 524 526 enddir = &s[strlen(s)]; 525 strcat(s, "$FM2LI$T ");527 strcat(s, "$FM2LI$T."); 526 528 strcat(s, "???"); 527 529 search_handle = HDIR_CREATE; … … 666 668 rc = DosQueryPathInfo(env, FIL_STANDARD, &fs3, sizeof(fs3)); 667 669 if (!rc) { 670 CHAR *enddir, *p, szTempName[CCHMAXPATH], temp[CCHMAXPATH]; 671 FILEFINDBUF3 ffb; 672 HDIR search_handle; 673 ULONG num_matches, ul; 674 675 strcpy(szTempName, env); 676 if (szTempName[strlen(szTempName) - 1] != '\\') 677 strcat(szTempName, "\\"); 678 enddir = &szTempName[strlen(szTempName)]; 679 strcat(szTempName, "$FM2????."); 680 strcat(szTempName, "???"); 681 search_handle = HDIR_CREATE; 682 num_matches = 1; 683 if (!DosFindFirst(szTempName, 684 &search_handle, 685 FILE_NORMAL | FILE_DIRECTORY | 686 FILE_SYSTEM | FILE_READONLY | FILE_HIDDEN | 687 FILE_ARCHIVED, 688 &ffb, sizeof(ffb), &num_matches, FIL_STANDARD)) { 689 do { 690 strcpy(enddir, ffb.achName); 691 p = strrchr(szTempName, '.'); 692 if (p) { 693 p++; 694 ul = strtol(p, &p + 2, 16); 695 GetDosPgmName(ul, temp); 696 if (!strstr(temp, "FM/2") && 697 !strstr(temp, "AV/2")) { 698 wipeallf("%s\\*", szTempName); 699 DosDeleteDir(szTempName); 700 } 701 } 702 } 703 while (!DosFindNext(search_handle, 704 &ffb, sizeof(ffb), &num_matches)); 705 DosFindClose(search_handle); 706 } 668 707 if (fs3.attrFile & FILE_DIRECTORY) { 669 CHAR szTempName[CCHMAXPATH];670 708 APIRET ret = 0; 671 // 17 Jul 08 SHL fixme to check writable someday672 709 strcpy(szTempName, env); 673 //if (szTempName[strlen(szTempName) - 1] != '\\')674 // strcat(szTempName, "\\");675 710 MakeTempName(szTempName, NULL, 1); 676 711 ret = DosCreateDir(szTempName, 0); 677 if (!ret) { 712 if (!ret) { //check writable 678 713 pTmpDir = xstrdup(szTempName, pszSrcFile, __LINE__); 679 } 714 } //fixme to check freespace > 5 MB 680 715 } 681 716 }
Note:
See TracChangeset
for help on using the changeset viewer.