Changeset 1082 for trunk/dll/copyf.c
- Timestamp:
- Jul 20, 2008, 12:37:36 AM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/dll/copyf.c
r1039 r1082 7 7 8 8 Copyright (c) 1993-98 M. Kimes 9 Copyright (c) 2001, 200 6Steven H.Levine9 Copyright (c) 2001, 2008 Steven H.Levine 10 10 11 11 14 Sep 02 SHL Drop obsolete debug code … … 19 19 01 Sep 07 GKY Use xDosSetPathInfo to fix case where FS3 buffer crosses 64k boundry 20 20 29 Feb 08 GKY Use xfree where appropriate 21 19 Jul 08 GKY Modify MakeTempName for use making temp directory names 21 22 22 23 ***********************************************************************/ … … 49 50 #endif 50 51 51 char *MakeTempName(char *buffer )52 char *MakeTempName(char *buffer, char *temproot, INT type) 52 53 { 53 54 FILESTATUS3 fs3; … … 55 56 char *p, *o; 56 57 58 if (strlen(buffer) > 3 && buffer[strlen(buffer) - 1] != '\\') 59 strcat(buffer, "\\"); 57 60 p = o = buffer + strlen(buffer); 58 sprintf(p, "%08lx.%03lx", clock(), mypid); 61 switch (type) { 62 case 0: 63 sprintf(p, "%08lx.%03lx", rand() & 4095L, mypid); 64 break; 65 case 1: 66 sprintf(p, "%s%04lx.%03lx", "$FM2", rand() & 4095L, mypid); 67 break; 68 case 2: 69 sprintf(p, "%s.%03x", temproot, (rand() & 4095)); 70 break; 71 default: 72 break; 73 } 59 74 p = buffer + (strlen(buffer) - 1); 60 75 for (;;) { … … 510 525 *p = 0; 511 526 strcat(dir, "\\"); 512 MakeTempName(dir );527 MakeTempName(dir, NULL, 0); 513 528 if (DosMove(fullnewname, dir)) 514 529 *dir = 0; … … 894 909 #pragma alloc_text(LONGNAMES,TruncName,GetLongName,WriteLongName) 895 910 #pragma alloc_text(LONGNAMES,ZapLongName,AdjustWildcardName) 896 #pragma alloc_text(COPYF,default_disk,docopyf )911 #pragma alloc_text(COPYF,default_disk,docopyf,MakeTempName) 897 912 #pragma alloc_text(UNLINKF,unlinkf,unlink_allf,make_deleteable,wipeallf)
Note:
See TracChangeset
for help on using the changeset viewer.