Changeset 7065 for trunk/src/kernel32/heap.cpp
- Timestamp:
- Oct 15, 2001, 7:16:37 PM (24 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/kernel32/heap.cpp
r7063 r7065 1 /* $Id: heap.cpp,v 1.3 7 2001-10-15 17:10:54sandervl Exp $ */1 /* $Id: heap.cpp,v 1.38 2001-10-15 17:16:37 sandervl Exp $ */ 2 2 3 3 /* … … 226 226 * NULL: Failure 227 227 */ 228 HGLOBAL WINAPI GlobalAlloc( 229 UINT flags, /* [in] Object allocation attributes */230 DWORD size /* [in] Number of bytes to allocate */231 ){228 ODINFUNCTION2(HGLOBAL, GlobalAlloc, 229 UINT, flags, 230 DWORD, size) 231 { 232 232 PGLOBAL32_INTERN pintern; 233 233 DWORD hpflags; … … 280 280 * NULL: Failure 281 281 */ 282 LPVOID WINAPI GlobalLock( 283 HGLOBAL hmem /* [in] Handle of global memory object */284 ){282 ODINFUNCTION1(LPVOID, GlobalLock, 283 HGLOBAL, hmem) 284 { 285 285 PGLOBAL32_INTERN pintern; 286 286 LPVOID palloc; … … 328 328 * FALSE: Object is unlocked 329 329 */ 330 BOOL WINAPI GlobalUnlock( 331 HGLOBAL hmem /* [in] Handle of global memory object */332 ){330 ODINFUNCTION1(BOOL, GlobalUnlock, 331 HGLOBAL, hmem) 332 { 333 333 PGLOBAL32_INTERN pintern; 334 334 BOOL locked; 335 336 dprintf(("KERNEL32: GlobalUnlock %x", hmem));337 335 338 336 if(hmem == NULL || ISPOINTER(hmem)) … … 377 375 * NULL: Failure 378 376 */ 379 HGLOBAL WINAPI GlobalHandle( 380 LPCVOID pmem /* [in] Pointer to global memory block */381 ){377 ODINFUNCTION1(HGLOBAL, GlobalHandle, 378 LPCVOID, pmem) 379 { 382 380 HGLOBAL handle; 383 381 PGLOBAL32_INTERN maybe_intern; 384 382 LPCVOID test; 385 386 dprintf(("KERNEL32: GlobalHandle %x", pmem));387 383 388 384 if (!pmem) … … 470 466 * NULL: Failure 471 467 */ 472 HGLOBAL WINAPI GlobalReAlloc( 473 HGLOBAL hmem, /* [in] Handle of global memory object */474 DWORD size, /* [in] New size of block */475 UINT flags /* [in] How to reallocate object */476 ){468 ODINFUNCTION3(HGLOBAL, GlobalReAlloc, 469 HGLOBAL, hmem, 470 DWORD, size, 471 UINT, flags) 472 { 477 473 LPVOID palloc; 478 474 HGLOBAL hnew; … … 580 576 * Handle: Failure 581 577 */ 582 HGLOBAL WINAPI GlobalFree( 583 HGLOBAL hmem /* [in] Handle of global memory object */584 ){578 ODINFUNCTION1(HGLOBAL, GlobalFree, 579 HGLOBAL, hmem) 580 { 585 581 PGLOBAL32_INTERN pintern; 586 582 HGLOBAL hreturned = 0; 587 588 dprintf(("KERNEL32: GlobalFree %x", hmem));589 583 590 584 /* verify lpMem address */ … … 631 625 * 0: Failure 632 626 */ 633 DWORD WINAPI GlobalSize( 634 HGLOBAL hmem /* [in] Handle of global memory object */635 ){627 ODINFUNCTION1(DWORD, GlobalSize, 628 HGLOBAL, hmem) 629 { 636 630 DWORD retval; 637 631 PGLOBAL32_INTERN pintern; 638 639 dprintf(("KERNEL32: GlobalSize %x", hmem));640 632 641 633 if(ISPOINTER(hmem)) … … 674 666 * GlobalWire (KERNEL32.@) 675 667 */ 676 LPVOID WINAPI GlobalWire(HGLOBAL hmem) 668 ODINFUNCTION1(LPVOID, GlobalWire, 669 HGLOBAL, hmem) 677 670 { 678 671 return GlobalLock( hmem ); … … 683 676 * GlobalUnWire (KERNEL32.@) 684 677 */ 685 BOOL WINAPI GlobalUnWire(HGLOBAL hmem) 678 ODINFUNCTION1(BOOL, GlobalUnWire, 679 HGLOBAL, hmem) 686 680 { 687 681 return GlobalUnlock( hmem); … … 692 686 * GlobalFix (KERNEL32.@) 693 687 */ 694 VOID WINAPI GlobalFix(HGLOBAL hmem) 688 ODINPROCEDURE1(GlobalFix, 689 HGLOBAL, hmem) 695 690 { 696 691 GlobalLock( hmem ); … … 701 696 * GlobalUnfix (KERNEL32.@) 702 697 */ 703 VOID WINAPI GlobalUnfix(HGLOBAL hmem) 698 ODINPROCEDURE1(GlobalUnfix, 699 HGLOBAL, hmem) 704 700 { 705 701 GlobalUnlock( hmem); … … 718 714 * GMEM_INVALID_HANDLE: Failure 719 715 */ 720 UINT WINAPI GlobalFlags( 721 HGLOBAL hmem /* [in] Handle to global memory object */722 ){716 ODINFUNCTION1(UINT, GlobalFlags, 717 HGLOBAL, hmem) 718 { 723 719 DWORD retval; 724 720 PGLOBAL32_INTERN pintern; 725 721 726 dprintf(("KERNEL32: GlobalFlags %x", hmem));727 728 722 if(ISPOINTER(hmem)) 729 723 { … … 754 748 * GlobalCompact (KERNEL32.@) 755 749 */ 756 DWORD WINAPI GlobalCompact( DWORD minfree ) 757 { 758 dprintf(("KERNEL32: GlobalCompact %d OBSOLETE", minfree)); 759 750 ODINFUNCTION1(DWORD, GlobalCompact, 751 DWORD, minfree ) 752 { 760 753 return 0; /* GlobalCompact does nothing in Win32 */ 761 754 } … … 766 759 #endif 767 760 //****************************************************************************** 768 HGLOBAL WIN32API GlobalAlloc(UINT fuFlags, DWORD dwBytes) 761 ODINFUNCTION2(HGLOBAL, GlobalAlloc, 762 UINT, fuFlags, 763 DWORD, dwBytes) 769 764 { 770 765 HGLOBAL ret; … … 774 769 totalGlobalAlloc += dwBytes; 775 770 #endif 776 dprintf(("KERNEL32: GlobalAlloc %x %d returned %x (total %x)", fuFlags, dwBytes, ret, totalGlobalAlloc));777 771 return ret; 778 772 } 779 773 //****************************************************************************** 780 774 //****************************************************************************** 781 HGLOBAL WIN32API GlobalFree( HGLOBAL arg1) 775 ODINFUNCTION1(HGLOBAL, GlobalFree, 776 HGLOBAL, arg1) 782 777 { 783 778 HGLOBAL ret; … … 787 782 #endif 788 783 ret = O32_GlobalFree(arg1); 789 dprintf(("KERNEL32: GlobalFree %x returned %x (lasterr=%x) total %x", arg1, ret, GetLastError(), totalGlobalAlloc));790 784 return ret; 791 785 } 792 786 //****************************************************************************** 793 787 //****************************************************************************** 794 HGLOBAL WIN32API GlobalHandle( LPCVOID lpMem) 795 { 796 dprintf(("KERNEL32: GlobalHandle %x", lpMem)); 797 788 ODINFUNCTION1(HGLOBAL, GlobalHandle, 789 LPCVOID, lpMem) 790 { 798 791 return O32_GlobalHandle((LPVOID)lpMem); 799 792 } 800 793 //****************************************************************************** 801 794 //****************************************************************************** 802 UINT WIN32API GlobalFlags(HGLOBAL hMem) 803 { 804 dprintf(("KERNEL32: GlobalFlags %x", hMem)); 805 795 ODINFUNCTION1(UINT, GlobalFlags, 796 HGLOBAL, hMem) 797 { 806 798 return O32_GlobalFlags(hMem); 807 799 } 808 800 //****************************************************************************** 809 801 //****************************************************************************** 810 DWORD WIN32API GlobalCompact(DWORD dwMinFree) 811 { 812 dprintf(("KERNEL32: GlobalCompact, OBSOLETE - stub\n")); 813 802 ODINFUNCTION1(DWORD, GlobalCompact, 803 DWORD, dwMinFree) 804 { 814 805 return(0); 815 806 } 816 807 //****************************************************************************** 817 808 //****************************************************************************** 818 PVOID WIN32API GlobalLock(HGLOBAL hMem) 819 { 820 PVOID ret; 821 822 ret = O32_GlobalLock(hMem); 823 dprintf(("KERNEL32: GlobalLock %x returned %x", hMem, ret)); 824 return ret; 825 } 826 //****************************************************************************** 827 //****************************************************************************** 828 HGLOBAL WIN32API GlobalReAlloc(HGLOBAL arg1, DWORD arg2, UINT arg3) 829 { 830 dprintf(("KERNEL32: GlobalReAlloc %x %x %d", arg1, arg2, arg3)); 831 809 ODINFUNCTION1(PVOID, GlobalLock, 810 HGLOBAL, hMem) 811 { 812 return O32_GlobalLock(hMem); 813 } 814 //****************************************************************************** 815 //****************************************************************************** 816 ODINFUNCTION3(HGLOBAL, GlobalReAlloc, 817 HGLOBAL, arg1, 818 DWORD, arg2, 819 UINT, arg3) 820 { 832 821 return O32_GlobalReAlloc(arg1, arg2, arg3); 833 822 } 834 823 //****************************************************************************** 835 824 //****************************************************************************** 836 DWORD WIN32API GlobalSize(HGLOBAL arg1) 837 { 838 dprintf(("KERNEL32: GlobalSize\n")); 839 825 ODINFUNCTION1(DWORD, GlobalSize, 826 HGLOBAL, arg1) 827 { 840 828 return O32_GlobalSize(arg1); 841 829 } 842 830 //****************************************************************************** 843 831 //****************************************************************************** 844 BOOL WIN32API GlobalUnlock(HGLOBAL arg1) 845 { 846 dprintf(("KERNEL32: GlobalUnlock\n")); 847 832 ODINFUNCTION1(BOOL, GlobalUnlock, 833 HGLOBAL, arg1) 834 { 848 835 return O32_GlobalUnlock(arg1); 849 836 } … … 856 843 * 857 844 */ 858 LPVOID WIN32API GlobalWire(HGLOBAL hmem) 845 ODINFUNCTION1(LPVOID, GlobalWire, 846 HGLOBAL, hmem) 859 847 { 860 848 return GlobalLock( hmem ); … … 868 856 * 869 857 */ 870 BOOL WIN32API GlobalUnWire(HGLOBAL hmem) 858 ODINFUNCTION1(BOOL, GlobalUnWire, 859 HGLOBAL, hmem) 871 860 { 872 861 return GlobalUnlock( hmem); … … 874 863 //****************************************************************************** 875 864 //****************************************************************************** 876 HGLOBAL WIN32API GlobalDiscard(HGLOBAL hGlobal) 877 { 878 dprintf(("KERNEL32: GlobalDiscard %x", hGlobal)); 879 865 ODINFUNCTION1(HGLOBAL, GlobalDiscard, 866 HGLOBAL, hGlobal) 867 { 880 868 return O32_GlobalDiscard(hGlobal); 881 869 } … … 883 871 * GlobalFix (KERNEL32.@) 884 872 */ 885 VOID WINAPI GlobalFix(HGLOBAL hmem) 873 ODINPROCEDURE1(GlobalFix, 874 HGLOBAL, hmem) 886 875 { 887 876 GlobalLock( hmem ); … … 890 879 * GlobalUnfix (KERNEL32.@) 891 880 */ 892 VOID WINAPI GlobalUnfix(HGLOBAL hmem) 881 ODINPROCEDURE1(GlobalUnfix, 882 HGLOBAL, hmem) 893 883 { 894 884 GlobalUnlock( hmem); … … 897 887 //****************************************************************************** 898 888 //****************************************************************************** 899 HLOCAL WIN32API LocalAlloc(UINT fuFlags, DWORD cbBytes) 889 ODINFUNCTION2(HLOCAL, LocalAlloc, 890 UINT, fuFlags, 891 DWORD, cbBytes) 900 892 { 901 893 HLOCAL hLocal; … … 916 908 //****************************************************************************** 917 909 //****************************************************************************** 918 UINT WIN32API LocalFlags(HLOCAL hMem) 910 ODINFUNCTION1(UINT, LocalFlags, 911 HLOCAL, hMem) 919 912 { 920 913 UINT ret, retG; 921 dprintf(("KERNEL32: LocalFlags %X\n", hMem));922 914 923 915 retG = GlobalFlags(hMem); … … 937 929 //****************************************************************************** 938 930 //****************************************************************************** 939 HLOCAL WIN32API LocalFree(HLOCAL hMem) 940 { 941 dprintf(("KERNEL32: LocalFree %X", hMem)); 942 931 ODINFUNCTION1(HLOCAL, LocalFree, 932 HLOCAL, hMem) 933 { 943 934 return GlobalFree(hMem); 944 935 } 945 936 //****************************************************************************** 946 937 //****************************************************************************** 947 HLOCAL WIN32API LocalHandle(PCVOID lpMem) 948 { 949 dprintf(("KERNEL32: LocalHandle %x", lpMem)); 950 938 ODINFUNCTION1(HLOCAL, LocalHandle, 939 PCVOID, lpMem) 940 { 951 941 return GlobalHandle(lpMem); 952 942 } 953 943 //****************************************************************************** 954 944 //****************************************************************************** 955 BOOL WIN32API LocalUnlock(HLOCAL hMem) 956 { 957 dprintf(("KERNEL32: LocalUnlock %X", hMem)); 958 945 ODINFUNCTION1(BOOL, LocalUnlock, 946 HLOCAL, hMem) 947 { 959 948 return GlobalUnlock(hMem); 960 949 } … … 962 951 //TODO: cbBytes==0 && fuFlags & LMEM_MOVEABLE not handled!! 963 952 //****************************************************************************** 964 HLOCAL WIN32API LocalReAlloc(HLOCAL hMem, DWORD cbBytes, UINT fuFlags) 953 ODINFUNCTION3(HLOCAL, LocalReAlloc, 954 HLOCAL, hMem, 955 DWORD, cbBytes, 956 UINT, fuFlags) 965 957 { 966 958 HLOCAL hLocalNew, hLocalOld; 967 959 LPVOID lpMem, lpMemOld; 968 960 DWORD cbOldSize; 969 970 dprintf(("KERNEL32: LocalReAlloc %X %d %X\n", hMem, cbBytes, fuFlags));971 961 972 962 // Check flags … … 988 978 //****************************************************************************** 989 979 //****************************************************************************** 990 UINT WIN32API LocalSize(HLOCAL hMem) 991 { 992 dprintf(("KERNEL32: LocalSize %X", hMem)); 993 980 ODINFUNCTION1(UINT, LocalSize, 981 HLOCAL, hMem) 982 { 994 983 return GlobalSize(hMem); 995 984 } 996 985 //****************************************************************************** 997 986 //****************************************************************************** 998 PVOID WIN32API LocalLock(HLOCAL hMem) 999 { 1000 dprintf(("KERNEL32: LocalLock %X\n", hMem)); 1001 987 ODINFUNCTION1(PVOID, LocalLock, 988 HLOCAL, hMem) 989 { 1002 990 return GlobalLock(hMem); 1003 991 } … … 1005 993 //* this function is here for completeness, some stupid software requires it. 1006 994 //****************************************************************************** 1007 UINT WIN32API LocalShrink(HLOCAL hMem, UINT cbNewSize) 1008 { 1009 dprintf(("KERNEL32: LocalShrink %X, %08xh - OBSOLETE", hMem, cbNewSize));1010 995 ODINFUNCTION2(UINT, LocalShrink, 996 HLOCAL, hMem, 997 UINT, cbNewSize) 998 { 1011 999 return cbNewSize; 1012 1000 } … … 1014 1002 //* this function is here for completeness, mIRC/32 requires it. 1015 1003 //****************************************************************************** 1016 UINT WIN32API LocalCompact(UINT cbNewSize) 1017 { 1018 dprintf(("KERNEL32: LocalCompact %08xh - OBSOLETE", cbNewSize)); 1019 1004 ODINFUNCTION1(UINT, LocalCompact, 1005 UINT, cbNewSize) 1006 { 1020 1007 return cbNewSize; 1021 1008 }
Note:
See TracChangeset
for help on using the changeset viewer.