Changeset 336 for trunk/dll/info.c
- Timestamp:
 - Jul 26, 2006, 3:41:41 AM (19 years ago)
 - File:
 - 
      
- 1 edited
 
- 
          
  trunk/dll/info.c (modified) (14 diffs)
 
 
Legend:
- Unmodified
 - Added
 - Removed
 
- 
      
trunk/dll/info.c
r186 r336 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 16 Oct 02 SHL Handle large partitions … … 15 15 25 May 05 SHL Use ULONGLONG and CommaFmtULL 16 16 05 Jun 05 SHL Use QWL_USER 17 14 Jul 06 SHL Use Runtime_Error 17 18 18 19 ***********************************************************************/ … … 35 36 36 37 #pragma data_seg(DATA1) 38 39 static PSZ pszSrcFile = __FILE__; 40 37 41 #pragma alloc_text(FMINFO,FileInfoProc,IconProc) 38 42 #pragma alloc_text(FMINFO2,SetDrvProc,DrvInfoProc) 39 43 40 44 41 CHAR *FlagMsg (CHAR drive,CHAR *buffer) {42 45 CHAR *FlagMsg (CHAR drive,CHAR *buffer) 46 { 43 47 ULONG x; 44 48 BOOL once = FALSE; … … 85 89 CHAR szKB[20]; 86 90 CHAR szUnits[20]; 91 APIRET rc; 87 92 88 93 switch(msg) … … 355 360 *s = strlen(s + 1); 356 361 DosError(FERR_DISABLEHARDERR); 357 if(DosSetFSInfo(toupper(*pszFileName) - '@', 358 2L, 359 (PVOID)s, 360 (ULONG)sizeof(s))) 361 DosBeep(50,100); 362 rc = DosSetFSInfo(toupper(*pszFileName) - '@', 363 2L, 364 (PVOID)s, 365 (ULONG)sizeof(s)); 366 if (rc) { 367 Dos_Error(MB_CANCEL,rc,hwnd,__FILE__,__LINE__, 368 "DosSetFSInfo failed"); 369 } 362 370 } 363 371 } … … 543 551 544 552 545 MRESULT EXPENTRY FileInfoProc (HWND hwnd,ULONG msg,MPARAM mp1,MPARAM mp2) {546 553 MRESULT EXPENTRY FileInfoProc (HWND hwnd,ULONG msg,MPARAM mp1,MPARAM mp2) 554 { 547 555 ICONSTUF *is; 548 556 … … 553 561 break; 554 562 } 555 is = malloc(sizeof(ICONSTUF)); 556 if(!is) { 557 DosBeep(50,100); 563 is = xmallocz(sizeof(ICONSTUF),pszSrcFile,__LINE__); 564 if (!is) { 558 565 WinDismissDlg(hwnd,1); 559 566 break; 560 567 } 561 memset(is,0,sizeof(ICONSTUF));562 568 is->list = (CHAR **)mp2; 563 569 is->size = sizeof(ICONSTUF); … … 648 654 case LN_SELECT: 649 655 is = WinQueryWindowPtr(hwnd,QWL_USER); 650 if(is) { 656 if (!is) { 657 Runtime_Error(pszSrcFile, __LINE__, "no data"); 658 WinDismissDlg(hwnd,1); 659 } 660 else { 651 661 652 662 SHORT sSelect; … … 680 690 } 681 691 } 682 else {683 DosBeep(50,100);684 WinDismissDlg(hwnd,1);685 }686 692 break; 687 693 } … … 715 721 WinCheckButton(hwnd,FLE_PROTDLL,FALSE); 716 722 is = WinQueryWindowPtr(hwnd,QWL_USER); 717 if(is && *is->szFileName) { 718 723 if (is && *is->szFileName) { 719 724 CHAR s[97]; 720 725 FILEFINDBUF4 fs; … … 726 731 727 732 DosError(FERR_DISABLEHARDERR); 728 if(DosFindFirst(is->szFileName, 729 &hdir, 730 FILE_NORMAL | FILE_ARCHIVED | 731 FILE_DIRECTORY | FILE_READONLY | FILE_HIDDEN | 732 FILE_SYSTEM, 733 &fs, 734 sizeof(fs), 735 &apptype, 736 FIL_QUERYEASIZE)) { 737 DosBeep(250,100); 738 { 739 SHORT sSelect,numitems; 740 741 sSelect = (SHORT)WinSendDlgItemMsg(hwnd, 742 FLE_NAME, 743 LM_QUERYSELECTION, 744 MPFROMSHORT(LIT_FIRST), 745 MPVOID); 746 if(sSelect >= 0) { 747 WinSendDlgItemMsg(hwnd, 748 FLE_NAME, 749 LM_DELETEITEM, 750 MPFROMSHORT(sSelect), 751 MPVOID); 752 numitems = (SHORT)WinSendDlgItemMsg(hwnd, 753 FLE_NAME, 754 LM_QUERYITEMCOUNT, 755 MPVOID, 756 MPVOID); 757 if(numitems) 758 PostMsg(WinWindowFromID(hwnd,FLE_NAME), 759 LM_SELECTITEM, 760 MPFROMSHORT(((sSelect) ? sSelect - 1 : 0)), 761 MPFROMSHORT(TRUE)); 762 } 733 if (DosFindFirst(is->szFileName, 734 &hdir, 735 FILE_NORMAL | FILE_ARCHIVED | 736 FILE_DIRECTORY | FILE_READONLY | FILE_HIDDEN | 737 FILE_SYSTEM, 738 &fs, 739 sizeof(fs), 740 &apptype, 741 FIL_QUERYEASIZE)) { 742 // Not found 743 SHORT sSelect,numitems; 744 745 DosBeep(250,100); // Wake up user 746 sSelect = (SHORT)WinSendDlgItemMsg(hwnd, 747 FLE_NAME, 748 LM_QUERYSELECTION, 749 MPFROMSHORT(LIT_FIRST), 750 MPVOID); 751 if (sSelect >= 0) { 752 WinSendDlgItemMsg(hwnd, 753 FLE_NAME, 754 LM_DELETEITEM, 755 MPFROMSHORT(sSelect), 756 MPVOID); 757 numitems = (SHORT)WinSendDlgItemMsg(hwnd, 758 FLE_NAME, 759 LM_QUERYITEMCOUNT, 760 MPVOID, 761 MPVOID); 762 if (numitems) 763 PostMsg(WinWindowFromID(hwnd,FLE_NAME), 764 LM_SELECTITEM, 765 MPFROMSHORT(((sSelect) ? sSelect - 1 : 0)), 766 MPFROMSHORT(TRUE)); 763 767 } 764 768 } … … 906 910 fp = _fsopen(is->szFileName,"rb",SH_DENYNO); 907 911 if(fp) { 908 909 912 char buff[512]; 910 913 ULONG len; … … 942 945 } 943 946 fp = _fsopen(is->szFileName,"ab",SH_DENYNO); 944 if (fp) {947 if (fp) { 945 948 WinCheckButton(hwnd,FLE_WRITEABLE,TRUE); 946 949 fclose(fp); 947 950 } 948 951 fp = _fsopen(is->szFileName,"rb",SH_DENYRW); 949 if (!fp)952 if (!fp) 950 953 WinCheckButton(hwnd,FLE_OPEN,TRUE); 951 954 else … … 1016 1019 1017 1020 1018 MRESULT EXPENTRY SetDrvProc (HWND hwnd,ULONG msg,MPARAM mp1,MPARAM mp2) {1019 1021 MRESULT EXPENTRY SetDrvProc (HWND hwnd,ULONG msg,MPARAM mp1,MPARAM mp2) 1022 { 1020 1023 switch(msg) { 1021 1024 case WM_INITDLG:  
  Note:
 See   TracChangeset
 for help on using the changeset viewer.
  