mirror of
https://github.com/Unidata/netcdf-c.git
synced 2024-12-27 08:49:16 +08:00
245961de00
https://github.com/Unidata/netcdf-c/issues/1168 https://github.com/Unidata/netcdf-c/issues/1163 https://github.com/Unidata/netcdf-c/issues/1162 This PR partially fixes memory leaks in the netcdf-c library, in the ncdump utility, and in some test cases. The netcdf-c library now runs memory clean with the assumption that the --disable-utilities option is used. The primary remaining problem is ncgen. Once that is fixed, I believe the netcdf-c library will run memory clean with no limitations. Notes ----------- 1. Memory checking was performed using gcc -fsanitize=address. Valgrind-based testing has yet to be performed. 2. The pnetcdf, hdf4, and examples code has not been tested. Misc. Non-leak changes 1. Make tst_diskless2 only run when netcdf4 is enabled (issue 1162) 2. Fix CmakeLists.txt to turn off logging if ENABLE_NETCDF_4 is OFF 3. Isolated all my debug scripts into a single top-level directory called debug 4. Fix some USE_NETCDF4 dependencies in nc_test and nc_test4 Makefile.am
52 lines
984 B
Plaintext
52 lines
984 B
Plaintext
netcdf test_atomic_array {
|
|
types:
|
|
byte enum cloud_class_t {Clear = 0, Cumulonimbus = 1, Stratus = 2,
|
|
Stratocumulus = 3, Cumulus = 4, Altostratus = 5, Nimbostratus = 6,
|
|
Altocumulus = 7, Cirrostratus = 8, Cirrocumulus = 9, Cirrus = 10,
|
|
Missing = 127} ;
|
|
opaque(16) opaque16_t ;
|
|
dimensions:
|
|
d1 = 1 ;
|
|
d2 = 2 ;
|
|
d3 = 3 ;
|
|
d4 = 4 ;
|
|
d5 = 5 ;
|
|
variables:
|
|
ubyte vu8(d2, d3) ;
|
|
short v16(d4) ;
|
|
uint vu32(d2, d3) ;
|
|
double vd(d2) ;
|
|
char vc(d2) ;
|
|
string vs(d2, d2) ;
|
|
opaque16_t vo(d1, d2) ;
|
|
cloud_class_t primary_cloud(d5) ;
|
|
cloud_class_t primary_cloud:_FillValue = Missing ;
|
|
|
|
// global attributes:
|
|
:_DAP4_Little_Endian = 1UB ;
|
|
data:
|
|
|
|
vu8 =
|
|
255, 1, 2,
|
|
3, 4, 5 ;
|
|
|
|
v16 = 1, 2, 3, 4 ;
|
|
|
|
vu32 =
|
|
5, 4, 3,
|
|
2, 1, 0 ;
|
|
|
|
vd = 17.9, 1024.8 ;
|
|
|
|
vc = "@&" ;
|
|
|
|
vs =
|
|
"hello\tworld", "\r\n",
|
|
"Καλημέα", "abc" ;
|
|
|
|
vo =
|
|
0X0123456789ABCDEF0000000000000000, 0XABCDEF00000000000000000000000000 ;
|
|
|
|
primary_cloud = Clear, Stratus, Clear, Cumulonimbus, _ ;
|
|
}
|