diff options
author | Quincey Koziol <koziol@hdfgroup.org> | 2009-05-05 15:05:17 (GMT) |
---|---|---|
committer | Quincey Koziol <koziol@hdfgroup.org> | 2009-05-05 15:05:17 (GMT) |
commit | 548eec307006ebd01294fad2886421f07c3c92c8 (patch) | |
tree | f12a7a425e7c90e8895a205491fd8a85d21d5e90 /hl/src/H5LT.c | |
parent | 4ffc0b6acb36064e91a1afeb6eceee704e5af7f2 (diff) | |
download | hdf5-548eec307006ebd01294fad2886421f07c3c92c8.zip hdf5-548eec307006ebd01294fad2886421f07c3c92c8.tar.gz hdf5-548eec307006ebd01294fad2886421f07c3c92c8.tar.bz2 |
[svn-r16920] Description:
Merge these trunk revisions which occurred during the 1.8.3 release code
freeze back to the 1.8 branch:
From Quincey: 16845 16847 16849 16851 16858 16869 16897
From Ray: 16859 16880
From Allen: 16863
Tested on:
FreeBSD/32 6.3 (duty) in debug mode
FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
Linux/32 2.6 (jam) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe,
in debug mode
Linux/64-amd64 2.6 (smirom) w/Intel compilers w/default API=1.6.x,
w/C++ & FORTRAN, in production mode
Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
w/szip filter, in production mode
Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
in production mode
Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in debug mode
Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
Mac OS X/32 10.5.6 (amazon) in debug mode
Mac OS X/32 10.5.6 (amazon) w/C++ & FORTRAN, w/threadsafe,
in production mode
Diffstat (limited to 'hl/src/H5LT.c')
-rw-r--r-- | hl/src/H5LT.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/hl/src/H5LT.c b/hl/src/H5LT.c index 7c073d6..e797d14 100644 --- a/hl/src/H5LT.c +++ b/hl/src/H5LT.c @@ -1792,6 +1792,7 @@ herr_t H5LTdtype_to_text(hid_t dtype, char *str, H5LT_lang_t lang_type, size_t * if((ret = H5LT_dtype_to_text(dtype, &text_str, lang_type, &str_len, 1)) < 0) goto out; *len = strlen(text_str) + 1; + free(text_str); } else if(len && str) { if((ret = H5LT_dtype_to_text(dtype, &str, lang_type, len, 0)) < 0) goto out; @@ -2076,6 +2077,9 @@ next: break; } case H5T_OPAQUE: + { + char *tag; + /* Print lead-in */ sprintf(*dt_str, "H5T_OPAQUE {\n"); indent += COL; @@ -2085,7 +2089,12 @@ next: strcat(*dt_str, tmp_str); indentation(indent + COL, *dt_str); - sprintf(tmp_str, "OPQ_TAG \"%s\";\n", H5Tget_tag(dtype)); + tag = H5Tget_tag(dtype); + if(tag) { + sprintf(tmp_str, "OPQ_TAG \"%s\";\n", tag); + free(tag); + } else + sprintf(tmp_str, "OPQ_TAG \"\";\n"); strcat(*dt_str, tmp_str); /* Print closing */ @@ -2094,6 +2103,7 @@ next: strcat(*dt_str, "}"); break; + } case H5T_ENUM: { hid_t super; |