Mercurial > cgi-bin > hgwebdir.cgi > VMS > C_Libraries > DynArray
changeset 17:62b3a4793b6e MC_shared
chgd files to VMS__malloc and correct includes
| author | Me@portablequad |
|---|---|
| date | Sat, 11 Feb 2012 19:00:21 -0800 |
| parents | 596260ad0ede |
| children | ef65bdf3ce16 |
| files | DynArray.c DynArray.h |
| diffstat | 2 files changed, 12 insertions(+), 10 deletions(-) [+] |
line diff
1.1 --- a/DynArray.c Sat Feb 11 18:20:50 2012 -0800 1.2 +++ b/DynArray.c Sat Feb 11 19:00:21 2012 -0800 1.3 @@ -9,7 +9,6 @@ 1.4 #include <stdio.h> 1.5 1.6 #include "DynArray.h" 1.7 -#include "../vmalloc.h" 1.8 1.9 //== declarations 1.10 void 1.11 @@ -20,7 +19,7 @@ 1.12 makePrivDynArrayInfoFrom( void ***addrOfPtrToArray, int32 sizeOfArray ) 1.13 { PrivDynArrayInfo *info; 1.14 1.15 - info = malloc( sizeof(PrivDynArrayInfo) ); 1.16 + info = VMS__malloc( sizeof(PrivDynArrayInfo) ); 1.17 1.18 info->addrOfPtrToArray = addrOfPtrToArray; 1.19 info->sizeOfArray = sizeOfArray; 1.20 @@ -32,11 +31,11 @@ 1.21 makePrivDynArrayOfSize( void ***addrOfPtrToArray, int32 sizeOfArray ) 1.22 { PrivDynArrayInfo *info; 1.23 1.24 - info = malloc( sizeof(PrivDynArrayInfo) ); 1.25 + info = VMS__malloc( sizeof(PrivDynArrayInfo) ); 1.26 1.27 info->addrOfPtrToArray = addrOfPtrToArray; 1.28 1.29 - *(addrOfPtrToArray) = malloc( sizeOfArray * sizeof(void *) ); 1.30 + *(addrOfPtrToArray) = VMS__malloc( sizeOfArray * sizeof(void *) ); 1.31 info->sizeOfArray = sizeOfArray; 1.32 info->numInArray = 0; 1.33 return info; 1.34 @@ -140,7 +139,7 @@ 1.35 if( newSize <= oldSizeOfArray ) return; 1.36 1.37 oldArray = *(info->addrOfPtrToArray); 1.38 - newArray = malloc( newSize * sizeof(void *) ); 1.39 + newArray = VMS__malloc( newSize * sizeof(void *) ); 1.40 1.41 for( i = 0; i < oldSizeOfArray; i++ ) 1.42 { 1.43 @@ -149,10 +148,10 @@ 1.44 *(info->addrOfPtrToArray) = newArray; //change location of array-ptr 1.45 info->sizeOfArray = newSize; 1.46 1.47 - free( oldArray ); 1.48 + VMS__free( oldArray ); 1.49 } 1.50 1.51 -/*Can't mix malloc locations with external malloc locations -- so use 1.52 +/*Can't mix VMS__malloc locations with external malloc locations -- so use 1.53 * this version inside VMS, which will perform normal malloc in the core 1.54 * loop -- hopefully avoiding the annoying system-stack bugs.. 1.55 */ 1.56 @@ -184,8 +183,8 @@ 1.57 freeDynArrayDeep( PrivDynArrayInfo *info, FreeFnPtr freeFnPtr ) 1.58 { 1.59 forAllInDynArrayDo( info, freeFnPtr ); 1.60 - free( *(info->addrOfPtrToArray) ); 1.61 - free( info ); 1.62 + VMS__free( *(info->addrOfPtrToArray) ); 1.63 + VMS__free( info ); 1.64 } 1.65 1.66 /* Only frees the info 1.67 @@ -193,7 +192,7 @@ 1.68 void 1.69 freeDynArrayFlat( PrivDynArrayInfo *info ) 1.70 { 1.71 - free( info ); 1.72 + VMS__free( info ); 1.73 } 1.74 1.75
2.1 --- a/DynArray.h Sat Feb 11 18:20:50 2012 -0800 2.2 +++ b/DynArray.h Sat Feb 11 19:00:21 2012 -0800 2.3 @@ -8,6 +8,9 @@ 2.4 #ifndef _DYNARRAY_H 2.5 #define _DYNARRAY_H 2.6 2.7 +#include "../../VMS_Implementations/VMS_impl/VMS_primitive_data_types.h" 2.8 +#include "../../VMS_Implementations/VMS_impl/vmalloc.h" 2.9 + 2.10 2.11 //A dynamic array is same as any other array, but add a DynArrayInfo next 2.12 // to it. Accesses and updates of array indexes are done normally, it's
