Changeset 10910 for branches/jch-memory/psLib/src/sys/psMemory.c
- Timestamp:
- Jan 4, 2007, 4:52:24 PM (19 years ago)
- File:
-
- 1 edited
-
branches/jch-memory/psLib/src/sys/psMemory.c (modified) (36 diffs)
Legend:
- Unmodified
- Added
- Removed
-
branches/jch-memory/psLib/src/sys/psMemory.c
r10909 r10910 9 9 * @author Joshua Hoblitt, University of Hawaii 10 10 * 11 * @version $Revision: 1.88.2.1 7$ $Name: not supported by cvs2svn $12 * @date $Date: 2007-01-05 0 1:58:58$11 * @version $Revision: 1.88.2.18 $ $Name: not supported by cvs2svn $ 12 * @date $Date: 2007-01-05 02:52:24 $ 13 13 * 14 14 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 436 436 memBlock->persistent = memory_is_persistent; 437 437 438 // this block will be theadd as the last mem block in the list438 // this block will be add as the last mem block in the list 439 439 memBlock->previousBlock = NULL; 440 440 … … 488 488 489 489 // Reallocate the memory 490 491 // Is this the last block we allocated? If it is, we need to keep track of 492 // this fact and update lastMemBlockAllocated *after* the realloc or 493 // lastMemBlockAllocated will be left with a bogus value 494 bool isBlockLast = (memBlock == lastMemBlockAllocated); 490 495 491 496 memBlock = (psMemBlock *)realloc(memBlock, sizeof(psMemBlock) + size + sizeof(psPtr)); … … 501 506 } 502 507 508 // realloc() successed so need to update lastMemBlockAllocated if we just 509 // mucked with the last mem block 510 if (isBlockLast) { 511 lastMemBlockAllocated = memBlock; 512 } 513 503 514 memBlock->userMemorySize = size; 504 515 *(psPtr *)((int8_t *) (memBlock + 1) + size) = P_PS_MEMMAGIC; … … 770 781 return true; 771 782 } 772 PS_MEM_ERROR(PS_ERR_BAD_PARAMETER_VALUE, false,773 "Incorrect pointer. Datatypes do not match.\n");774 783 break; 775 784 case PS_DATA_BITSET: … … 777 786 return true; 778 787 } 779 PS_MEM_ERROR(PS_ERR_BAD_PARAMETER_VALUE, false,780 "Incorrect pointer. Datatypes do not match.\n");781 788 break; 782 789 case PS_DATA_CUBE: … … 784 791 return true; 785 792 } 786 PS_MEM_ERROR(PS_ERR_BAD_PARAMETER_VALUE, false,787 "Incorrect pointer. Datatypes do not match.\n");788 793 break; 789 794 case PS_DATA_FITS: … … 791 796 return true; 792 797 } 793 PS_MEM_ERROR(PS_ERR_BAD_PARAMETER_VALUE, false,794 "Incorrect pointer. Datatypes do not match.\n");795 798 break; 796 799 case PS_DATA_HASH: … … 798 801 return true; 799 802 } 800 PS_MEM_ERROR(PS_ERR_BAD_PARAMETER_VALUE, false,801 "Incorrect pointer. Datatypes do not match.\n");802 803 break; 803 804 case PS_DATA_HISTOGRAM: … … 805 806 return true; 806 807 } 807 PS_MEM_ERROR(PS_ERR_BAD_PARAMETER_VALUE, false,808 "Incorrect pointer. Datatypes do not match.\n");809 808 break; 810 809 case PS_DATA_IMAGE: … … 812 811 return true; 813 812 } 814 PS_MEM_ERROR(PS_ERR_BAD_PARAMETER_VALUE, false,815 "Incorrect pointer. Datatypes do not match.\n");816 813 break; 817 814 case PS_DATA_KERNEL: … … 819 816 return true; 820 817 } 821 PS_MEM_ERROR(PS_ERR_BAD_PARAMETER_VALUE, false,822 "Incorrect pointer. Datatypes do not match.\n");823 818 break; 824 819 case PS_DATA_LINE: … … 826 821 return true; 827 822 } 828 PS_MEM_ERROR(PS_ERR_BAD_PARAMETER_VALUE, false,829 "Incorrect pointer. Datatypes do not match.\n");830 823 break; 831 824 case PS_DATA_LIST: … … 833 826 return true; 834 827 } 835 PS_MEM_ERROR(PS_ERR_BAD_PARAMETER_VALUE, false,836 "Incorrect pointer. Datatypes do not match.\n");837 828 break; 838 829 case PS_DATA_LOOKUPTABLE: … … 840 831 return true; 841 832 } 842 PS_MEM_ERROR(PS_ERR_BAD_PARAMETER_VALUE, false,843 "Incorrect pointer. Datatypes do not match.\n");844 833 break; 845 834 case PS_DATA_METADATA: … … 847 836 return true; 848 837 } 849 PS_MEM_ERROR(PS_ERR_BAD_PARAMETER_VALUE, false,850 "Incorrect pointer. Datatypes do not match.\n");851 838 break; 852 839 case PS_DATA_METADATAITEM: … … 854 841 return true; 855 842 } 856 PS_MEM_ERROR(PS_ERR_BAD_PARAMETER_VALUE, false,857 "Incorrect pointer. Datatypes do not match.\n");858 843 break; 859 844 case PS_DATA_MINIMIZATION: … … 861 846 return true; 862 847 } 863 PS_MEM_ERROR(PS_ERR_BAD_PARAMETER_VALUE, false,864 "Incorrect pointer. Datatypes do not match.\n");865 848 break; 866 849 case PS_DATA_PIXELS: … … 868 851 return true; 869 852 } 870 PS_MEM_ERROR(PS_ERR_BAD_PARAMETER_VALUE, false,871 "Incorrect pointer. Datatypes do not match.\n");872 853 break; 873 854 case PS_DATA_PLANE: … … 875 856 return true; 876 857 } 877 PS_MEM_ERROR(PS_ERR_BAD_PARAMETER_VALUE, false,878 "Incorrect pointer. Datatypes do not match.\n");879 858 break; 880 859 case PS_DATA_PLANEDISTORT: … … 882 861 return true; 883 862 } 884 PS_MEM_ERROR(PS_ERR_BAD_PARAMETER_VALUE, false,885 "Incorrect pointer. Datatypes do not match.\n");886 863 break; 887 864 case PS_DATA_PLANETRANSFORM: … … 889 866 return true; 890 867 } 891 PS_MEM_ERROR(PS_ERR_BAD_PARAMETER_VALUE, false,892 "Incorrect pointer. Datatypes do not match.\n");893 868 break; 894 869 case PS_DATA_POLYNOMIAL1D: … … 896 871 return true; 897 872 } 898 PS_MEM_ERROR(PS_ERR_BAD_PARAMETER_VALUE, false,899 "Incorrect pointer. Datatypes do not match.\n");900 873 break; 901 874 case PS_DATA_POLYNOMIAL2D: … … 903 876 return true; 904 877 } 905 PS_MEM_ERROR(PS_ERR_BAD_PARAMETER_VALUE, false,906 "Incorrect pointer. Datatypes do not match.\n");907 878 break; 908 879 case PS_DATA_POLYNOMIAL3D: … … 910 881 return true; 911 882 } 912 PS_MEM_ERROR(PS_ERR_BAD_PARAMETER_VALUE, false,913 "Incorrect pointer. Datatypes do not match.\n");914 883 break; 915 884 case PS_DATA_POLYNOMIAL4D: … … 917 886 return true; 918 887 } 919 PS_MEM_ERROR(PS_ERR_BAD_PARAMETER_VALUE, false,920 "Incorrect pointer. Datatypes do not match.\n");921 888 break; 922 889 case PS_DATA_PROJECTION: … … 924 891 return true; 925 892 } 926 PS_MEM_ERROR(PS_ERR_BAD_PARAMETER_VALUE, false,927 "Incorrect pointer. Datatypes do not match.\n");928 893 break; 929 894 case PS_DATA_REGION: … … 931 896 return true; 932 897 } 933 PS_MEM_ERROR(PS_ERR_BAD_PARAMETER_VALUE, false,934 "Incorrect pointer. Datatypes do not match.\n");935 898 break; 936 899 case PS_DATA_SCALAR: … … 938 901 return true; 939 902 } 940 PS_MEM_ERROR(PS_ERR_BAD_PARAMETER_VALUE, false,941 "Incorrect pointer. Datatypes do not match.\n");942 903 break; 943 904 case PS_DATA_SPHERE: … … 945 906 return true; 946 907 } 947 PS_MEM_ERROR(PS_ERR_BAD_PARAMETER_VALUE, false,948 "Incorrect pointer. Datatypes do not match.\n");949 908 break; 950 909 case PS_DATA_SPHEREROT: … … 952 911 return true; 953 912 } 954 PS_MEM_ERROR(PS_ERR_BAD_PARAMETER_VALUE, false,955 "Incorrect pointer. Datatypes do not match.\n");956 913 break; 957 914 case PS_DATA_SPLINE1D: … … 959 916 return true; 960 917 } 961 PS_MEM_ERROR(PS_ERR_BAD_PARAMETER_VALUE, false,962 "Incorrect pointer. Datatypes do not match.\n");963 918 break; 964 919 case PS_DATA_STATS: … … 966 921 return true; 967 922 } 968 PS_MEM_ERROR(PS_ERR_BAD_PARAMETER_VALUE, false,969 "Incorrect pointer. Datatypes do not match.\n");970 923 break; 971 924 case PS_DATA_STRING: … … 973 926 return true; 974 927 } 975 PS_MEM_ERROR(PS_ERR_BAD_PARAMETER_VALUE, false,976 "Incorrect pointer. Datatypes do not match.\n");977 928 break; 978 929 case PS_DATA_TIME: … … 980 931 return true; 981 932 } 982 PS_MEM_ERROR(PS_ERR_BAD_PARAMETER_VALUE, false,983 "Incorrect pointer. Datatypes do not match.\n");984 933 break; 985 934 case PS_DATA_VECTOR: … … 987 936 return true; 988 937 } 989 PS_MEM_ERROR(PS_ERR_BAD_PARAMETER_VALUE, false,990 "Incorrect pointer. Datatypes do not match.\n");991 938 break; 992 939 default: 993 PS_MEM_ERROR(PS_ERR_BAD_PARAMETER_TYPE, true, 994 "Invalid datatype specified.\n"); 995 } 940 // error state -- fall through to returning false 941 break; 942 } 943 944 PS_MEM_ERROR(PS_ERR_BAD_PARAMETER_TYPE, true, 945 "Invalid datatype specified.\n"); 996 946 997 947 return false;
Note:
See TracChangeset
for help on using the changeset viewer.
