Changeset 347 for trunk/dll/copyf.c
- Timestamp:
- Jul 26, 2006, 7:43:28 AM (19 years ago)
- File:
-
- 1 edited
-
trunk/dll/copyf.c (modified) (24 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/dll/copyf.c
r173 r347 7 7 8 8 Copyright (c) 1993-98 M. Kimes 9 Copyright (c) 2001, 200 5Steven H.Levine9 Copyright (c) 2001, 2006 Steven H.Levine 10 10 11 11 14 Sep 02 SHL Drop obsolete debug code 12 12 14 Oct 02 SHL Drop obsolete debug code 13 13 10 Nov 02 SHL docopyf - don't forget to terminate longname 14 optimize longname logic14 optimize longname logic 15 15 01 Aug 04 SHL Rework lstrip/rstrip usage 16 16 28 May 05 SHL Drop debug code 17 14 Jul 06 SHL Use Runtime_Error 17 18 18 19 ***********************************************************************/ … … 21 22 #define INCL_DOSERRORS 22 23 #define INCL_WIN 23 24 24 #include <os2.h> 25 25 26 #include <io.h> 26 27 #include <string.h> … … 30 31 #include <ctype.h> 31 32 #include <time.h> 33 32 34 #include "fm3dll.h" 35 #include "fm3str.h" 36 37 static PSZ pszSrcFile = __FILE__; 33 38 34 39 #ifndef WinMoveObject … … 49 54 50 55 51 char *MakeTempName (char *buffer) {52 56 char *MakeTempName (char *buffer) 57 { 53 58 FILESTATUS3 fs3; 54 59 APIRET rc; … … 91 96 92 97 93 CHAR *TruncName (CHAR *oldname,CHAR *buffer) {94 98 CHAR *TruncName (CHAR *oldname,CHAR *buffer) 99 { 95 100 CHAR *p,*f,*s,*o; 96 101 FILESTATUS3 fs3; … … 188 193 189 194 190 CHAR *GetLongName (CHAR *oldname,CHAR *longname) {191 195 CHAR *GetLongName (CHAR *oldname,CHAR *longname) 196 { 192 197 if(!longname) 193 198 return NULL; … … 219 224 *value = 0; 220 225 } 221 pgealist = malloc(sizeof(GEA2LIST) + 32); 222 if(pgealist) { 223 memset(pgealist,0,sizeof(GEA2LIST) + 32); 226 pgealist = xmallocz(sizeof(GEA2LIST) + 32,pszSrcFile,__LINE__); 227 if (pgealist) { 224 228 pgea = &pgealist->list[0]; 225 229 strcpy(pgea->szName,LONGNAME); … … 227 231 pgea->oNextEntryOffset = 0L; 228 232 pgealist->cbList = (sizeof(GEA2LIST) + pgea->cbName); 229 pfealist = malloc(1536); 230 if(pfealist) { 231 memset(pfealist,0,1024); 233 pfealist = xmallocz(1536,pszSrcFile,__LINE__); 234 if (pfealist) { 232 235 pfealist->cbList = 1024; 233 236 eaop.fpGEA2List = pgealist; … … 258 261 259 262 260 BOOL ZapLongName (char *filename) {261 263 BOOL ZapLongName (char *filename) 264 { 262 265 return WriteLongName(filename, ""); 263 266 } 264 267 265 268 266 BOOL WriteLongName (CHAR *filename,CHAR *longname) {267 269 BOOL WriteLongName (CHAR *filename,CHAR *longname) 270 { 268 271 APIRET rc; 269 272 EAOP2 eaop; … … 293 296 else 294 297 ealen = sizeof(FEALIST) + 10; 295 if(!DosAllocMem((PPVOID)&pfealist, 296 ealen + 32L, 297 OBJ_TILE | PAG_COMMIT | PAG_READ | PAG_WRITE)) { 298 rc = DosAllocMem((PPVOID)&pfealist, 299 ealen + 32L, 300 OBJ_TILE | PAG_COMMIT | PAG_READ | PAG_WRITE); 301 if (rc) 302 Dos_Error(MB_CANCEL,rc,HWND_DESKTOP,pszSrcFile,__LINE__,GetPString(IDS_OUTOFMEMORY)); 303 else { 298 304 memset(pfealist, 299 305 0, … … 335 341 336 342 337 BOOL AdjustWildcardName (CHAR *oldname,CHAR *newname) {338 343 BOOL AdjustWildcardName (CHAR *oldname,CHAR *newname) 344 { 339 345 BOOL ret = FALSE; 340 346 … … 365 371 366 372 367 CHAR default_disk (VOID) {368 373 CHAR default_disk (VOID) 374 { 369 375 ULONG ulDriveNum,ulDriveMap; 370 376 … … 377 383 #ifdef NEVER 378 384 379 APIRET docopyallf (INT type,CHAR *oldname,CHAR *newname,...) {380 385 APIRET docopyallf (INT type,CHAR *oldname,CHAR *newname,...) 386 { 381 387 FILEFINDBUF3 fb; 382 388 ULONG nm; … … 421 427 422 428 423 APIRET docopyf (INT type,CHAR *oldname,CHAR *newname,...) {424 429 APIRET docopyf (INT type,CHAR *oldname,CHAR *newname,...) 430 { 425 431 /* 426 432 * returns: … … 766 772 767 773 default: /* shouldn't happen */ 768 DosBeep(50,100);774 Runtime_Error(pszSrcFile, __LINE__, "bad case %u", type); 769 775 break; 770 776 } … … 773 779 774 780 775 INT make_deleteable (CHAR *filename) {776 781 INT make_deleteable (CHAR *filename) 782 { 777 783 INT ret = -1; 778 784 FILESTATUS3 fsi; … … 796 802 797 803 798 INT wipeallf (CHAR *string,...) {799 804 INT wipeallf (CHAR *string,...) 805 { 800 806 /* unlink everything from directory on down... */ 801 807 … … 820 826 } 821 827 822 str = strdup(s);828 str = xstrdup(s,pszSrcFile,__LINE__); 823 829 if(!str) 824 830 return -1; … … 832 838 temp = *p; 833 839 *p = 0; 834 if(IsRoot(str) || !IsFullName(str)) { /* under no circumstances! */ 840 if(IsRoot(str) || !IsFullName(str)) { 841 /* under no circumstances! */ 842 Runtime_Error(pszSrcFile, __LINE__, "bad name %s", str); 835 843 free(str); 836 DosBeep(100,250);837 844 return -1; 838 845 } … … 856 863 } 857 864 858 ss = (CHAR *)malloc(CCHMAXPATH); 859 f = (FILEFINDBUF3 *)malloc(sizeof(FILEFINDBUF3)); 860 if(!ss || !f) { 861 if(ss) 862 free(ss); 863 if(f) 864 free(f); 865 ss = xmalloc(CCHMAXPATH,pszSrcFile,__LINE__); 866 f = xmalloc(sizeof(FILEFINDBUF3),pszSrcFile,__LINE__); 867 if (!ss || !f) { 868 xfree(ss); 869 xfree(f); 865 870 free(str); 866 871 return -1; … … 915 920 916 921 917 INT unlink_allf (CHAR *string,...) {918 922 INT unlink_allf (CHAR *string,...) 923 { 919 924 /* wildcard delete */ 920 925 … … 938 943 } 939 944 940 str = strdup(s);941 if (!str)945 str = xstrdup(s,pszSrcFile,__LINE__); 946 if (!str) 942 947 return -1; 943 948 … … 953 958 *s = 0; 954 959 955 ss = (CHAR *)malloc(CCHMAXPATH); 956 f = (FILEFINDBUF3 *)malloc(sizeof(FILEFINDBUF3)); 957 if(!ss || !f) { 958 if(ss) 959 free(ss); 960 if(f) 961 free(f); 960 ss = xmalloc(CCHMAXPATH,pszSrcFile,__LINE__); 961 f = xmalloc(sizeof(FILEFINDBUF3),pszSrcFile,__LINE__); 962 if (!ss || !f) { 963 xfree(ss); 964 xfree(f); 962 965 free(str); 963 966 return -1; … … 991 994 992 995 993 INT unlinkf (CHAR *string,...) {994 996 INT unlinkf (CHAR *string,...) 997 { 995 998 CHAR buffer[CCHMAXPATH]; 996 999 va_list ap;
Note:
See TracChangeset
for help on using the changeset viewer.
