summaryrefslogtreecommitdiffstats
path: root/src/H5T.c
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r21152] Description:Quincey Koziol2011-07-281-0/+36
| | | | | | | | | | | | | | | | | | | | Further patches for Jira 7638, to ensure that H5D/Aget_type will be attached to the correct top file. (This change to the library should reverted when Jira 7638 is finally finished) Tested on: FreeBSD/32 8.2 (loyalty) w/gcc4.6, w/C++ & FORTRAN, in debug mode FreeBSD/64 8.2 (freedom) w/gcc4.6, w/C++ & FORTRAN, in debug mode Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x, w/C++ & FORTRAN, w/threadsafe, in debug mode Linux/64-amd64 2.6 (koala) 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, w/threadsafe, in production mode Linux/PPC 2.6 (heiwa) w/C++ & FORTRAN, w/threadsafe, in debug mode Mac OS X/32 10.6.8 (amazon) in debug mode Mac OS X/32 10.6.8 (amazon) w/C++ & FORTRAN, w/threadsafe, in production mode
* [svn-r20872] Issue 7564 - Allow H5Tcreat to create string type (fixed-length ↵Raymond Lu2011-05-201-7/+25
| | | | | | and variable-length). I also added a test case in dtypes.c. Tested on jam and linew - relatively simple.
* [svn-r20691] Purpose: Fix problem exposed by external link cacheNeil Fortner2011-05-021-0/+5
| | | | | | | | | | | | | Description: When closing an object that had two open id's, the library would previously fail to account for the status of the "holding_file" field, potentially causing the file's "nopen_objs" field to become inconsistent. This caused problems when opening the same object twice through an external link using th external file cache. Modified the library to properly account for the status of the "holding_file" field when closing an object id, even when the underlying "shared" object isn't closed. Tested: jam, koala, heiwa (h5committest)
* [svn-r20121] Bug 1586 - the datatype handler created with H5Tencode/decode ↵Raymond Lu2011-02-181-1/+6
| | | | | | had the reference count 0. I fixed it by changing the APP_REF parameter of H5I_register from FALSE to TRUE and added a test case in dtypes.c. Tested on jam, heiwa, and amani.
* [svn-r19398] Descriptino:Quincey Koziol2010-09-161-24/+24
| | | | | | | | | | | | | | | | | | | | | | | Clean up the internal usage H5I_dec_ref() to eliminate the sequence of flags that has been creeping in. 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/default API=1.8.x, w/C++ & FORTRAN, w/threadsafe, in debug mode Linux/64-amd64 2.6 (amani) 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, w/threadsafe, in production mode Linux/PPC 2.6 (heiwa) w/C++ & FORTRAN, w/threadsafe, in debug mode Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN, in production mode Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in debug mode Mac OS X/32 10.6.4 (amazon) in debug mode Mac OS X/32 10.6.4 (amazon) w/C++ & FORTRAN, w/threadsafe, in production mode Mac OS X/32 10.6.4 (amazon) w/parallel, in debug mode
* [svn-r19363] When mandatory filter failed to write data chunks, the datasetRaymond Lu2010-09-091-13/+13
| | | | | | | couldn't close (bug 1260). The fix releases all resources and closes the dataset but returns a failure. Tested with h5committest - jam, heiwa, amani.
* [svn-r18702] Description:Quincey Koziol2010-05-051-11/+11
| | | | | | | | | | | | | | | | | | | | | | | Bring r18672 from metadata journaling "merging" branch to trunk: Mostly changes to move to only using one 'user data' parameter for calls to H5AC_protect(), along with some minor reformatting code cleanups. 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/default API=1.8.x, w/C++ & FORTRAN, w/threadsafe, in debug mode Linux/64-amd64 2.6 (amani) 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-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode Mac OS X/32 10.6.3 (amazon) in debug mode Mac OS X/32 10.6.3 (amazon) w/C++ & FORTRAN, w/threadsafe, in production mode
* [svn-r18597] Description:Quincey Koziol2010-04-201-2/+2
| | | | | | | | | | | | | | | | | | | Fix missing NULL initialization of pointers. 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/default API=1.8.x, w/C++ & FORTRAN, w/threadsafe, in debug mode Linux/64-amd64 2.6 (amani) 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.6.3 (amazon) in debug mode
* [svn-r18595] Description:Quincey Koziol2010-04-201-162/+175
| | | | | | | | Clean up compiler warnings Tested on: Mac OS X/32 10.6.3 (amazon) w/debug (too minor to require h5committest)
* [svn-r18535] Purpose: Fix bug 1815Neil Fortner2010-04-081-6/+0
| | | | | | | | | | | Description: Attempting to copy an object with NULL references (all bytes zero) with the H5O_COPY_EXPAND_REFERENCE_FLAG flag set would cause a failure or an assertion (depending on whether it was in debug mode). Changed copy routine to detect NULL references (object and region) and avoid attempting to expand the reference in this case. Tested: jam, linew, amani (h5committest)
* [svn-r18460] Description:Quincey Koziol2010-03-261-1/+1
| | | | | | | | | | | | | | | | | | | Fold metadata journaling changes into the trunk: mostly tweaky small stuff, also removed the H5F_t* field from the H5G_entry_t struct. 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/default API=1.8.x, w/C++ & FORTRAN, w/threadsafe, in debug mode Linux/64-amd64 2.6 (amani) 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
* [svn-r18357] Description:Quincey Koziol2010-03-021-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | Bring r18356 from metadata journaling merge branch to trunk: Converge metadata journaling branch with trunk with a bunch of v1 B-tree changes: - Remove H5ACprivate.h header from H5Bprivate.h header - Revise v1 B-tree client callbacks - Get rid of H5B_serialize() by bringing it into H5B_flush() 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/default API=1.8.x, w/C++ & FORTRAN, w/threadsafe, in debug mode Linux/64-amd64 2.6 (amani) 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
* [svn-r18197] Description:Quincey Koziol2010-01-301-4/+4
| | | | | | | | | Trim trailing whitespace from source code files with this command: find . \( -name "*.[ch]" -or -name "*.cpp" -or -name "*.f90" \) -print |xargs -n 1 sed -i "" 's/[[:blank:]]*$//' Tested on: None - eyeballed only
* [svn-r18031] Description:Quincey Koziol2009-12-171-21/+21
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bring r18030 from merge_metadata_journaling branch to trunk: Bring "brush clearing" changes (whitespace & style issues, mostly) from metadata_journaling branch to the "merging" branch, to converge the trunk and the metadata_journaling branch. Also, some other minor cleanups along the way. 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/default API=1.8.x, 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.6.2 (amazon) in debug mode Mac OS X/32 10.6.2 (amazon) w/C++ & FORTRAN, w/threadsafe, in production mode
* | [svn-r18011] Description:Quincey Koziol2009-12-131-160/+168
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bring Coverity changes into the trunk: (also other minor cleanups) r17991: Fix Coverity items 175 and 176. Fixed memory leak on error in print_enum in H5LT.c. r17993: (r17992 was not a Coverity change) Close Coverity issue #206: inconsistently checking whether dt->shared was non-NULL after H5T_alloc() returned a valid 'dt' value (which should guarantee that dt->shared is valid). r17994: Fix Coverity item 149. Fixed file handle leak on error in H5FD_stdio_open. r17995: Fixed Coverity issues 154 to 161: Added H5MP_close routine to error handling in the event *mp has not been freed before error. r17996: Close Coverity issue #126: potentially leaking merged_spans on routine failure. r17997: Fix Coverity items 147 and 148. Fixed resource leaks on error in H5FDloc.c. r17998: Coverity issue 269-272: Added integer result variable to functions that could return negative. Assigned to unsigned after checking. Added H5E_BEGIN_TRY block around H5Tclose and removed H5E_THROW in the catch block. Checked buffer is NULL before free. Changed HGOTO_ERROR outside of the if block to H5E_THROW. r17999: Close Coverity issue #127: release temporary spans in more generic manner. (Also add error checking to previous fix) r18000: Resolved Coverity issues 211 and 212 in H5T.c. Added comments to ignore Coverity warning regarding not checking pointer for NULL, as we are using an assert which catches the issue. r18001: Fix Coverity item 146. Fixed resource leak on error in H5O_layout_copy. r18002: Fix Coverity items 143 and 145. Fixed resource leaks on error in H5D_compact_copy and H5D_contig_copy. r18003: Close Coverity issue #192: close file on error r18004: Fix Coverity issue #125: release temporary spans on error r18005: Resolved Coverity issues 5, 25, and 83 (in H5T.c): Separated embedded functions in order to check for NULL on return of H5I_object before passing into H5T_copy. Check to see if new_dt is NULL within error handling before dereferencing it. Ignore Coverity's dead code warnings as the checks that lead to the code are machine dependent. r18006: Coverity 63,70,73: Checked result of function before assigning to an unsigned variable. r18007: Coverity 78,79: added continue statement if H5Pget_filter2 returns negative. r18008: Fixed Coverity issue # 138: Added support in error handling to free dst pointer (if allocated) on error. r18009: Whitespace & coding style cleanup
* | [svn-r17978] Description:Quincey Koziol2009-12-091-15/+9
| | | | | | | | | | | | | | | | Simplify checking for detecting variable-length strings. Tested on: Mac OS X/32 10.6.2 (amazon) debug & production Too minor to require h5committest
* | [svn-r17977] Bug fix for 1584. H5Tdetect_class said a VL string is a string ↵Raymond Lu2009-12-091-6/+24
| | | | | | | | | | | | | | | | | | | | | | | | type. But when it's in a compound type, it says it's a VL type. We want to tell user a VL string is a string. But internally we treat it as a VL type. I added a flag as a parameter of H5T_detect_class. It tells whether the caller is the public function H5Tdetect_class. I also added a detection for VL string in the private function for the compound case (or array or nested VL type). Tested on jam and amani - I tested the same change for 1.8 with h5committest.
* | [svn-r17953] Description:Quincey Koziol2009-12-031-50/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bring Coverity changes into the trunk: r17877: Error 266: Uninitialized memspace set to -1. Changed malloc and free to HDmalloc and HDfree. Removed unused dtype var. r17878: Error 265: Uninitialized mem_space set to -1. Changed malloc and free to HDmalloc and HDfree. Error 267: Uninitialized smspace set to -1. Changed malloc and free to HDmalloc and HDfree. r17879: Error 242: Uninitialized aid set to -1. Error 243: Uninitialized sid set to -1. Uninitialized tid set to -1 for consistency r17880: Error 242: reinitialized aid to -1 after close to be ready for reuse. Error 243: reinitialized sid to -1 after close to be ready for reuse. reinitialized tid to -1 for consistency after close to be ready for reuse. r17881: use valgrind to check there is a memory leak. The fix is to free ptrstr in line 5838 at xml_dump_group() of h5dump.c after it is used. run the valgrind after the fix, no memory leak for that part of the code. r17882: Fix Coverity items 256 and 269. r17883: Error 222-230: initialized hid_t vars to -1 after close to be ready for reuse. Also added H5Tclose for tid in gent_bigdims r17884: Bug fix (Coverity run2, view 23, dead code) (this is pair-program done by Albert, Elena and Larry). Confirmed and fixed the deadcode in hyperslab read branch of function diff_datasetid. (Discovered other bad code that diff_datasetid() should be recoded. Bug 1693 is entered for this.) r17906: Fix Coverity item 260. r17907: 262: Initialized hid_t's dtype, dtype_tmp and file to -1. Initialized H5T_t * dt to NULL. r17908: Fix Coverity item 261. r17909: Fix Coverity item 248. r17910: Revise fix for Coverity item 248. r17911: Resolved coverity issues #s 263, 162, 163, 164. All issues in dsets.c. Initialized fid and did hid_t's. filter_corrupt function was returning in the middle of an if statement, bypassing free calls. Updated error handling to free buffers and hid_t's appropriately. r17912: (done by Larry and Albert) Cleanup Coverity view warnings (#231-241) about using uninitialized variables. Initialized all of them. r17913: Resolved issue 251 and 264. Initialized tid2 to -1 and initialized buffers that were freed in case of an error. r17914: Resolved coverity issues 66, 220, and 221: 66: Negative Return assignment ignored 220,221: Initialized hid_t's. r17915: Fix Coverity item 247. r17916: Fix Coverity item 246. r17917: Fix Coverity item 245. r17918: Fix Coverity item 244. r17919: Coverity Issue #84: Moved asserts in H5T_cmp to the top of the function, and converted them to HDassert. Coverity complaining about using potentially NULL pointer without checking it. Want to see if Coverity will accept Assertions as acceptable checking before using the value. 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/default API=1.8.x, 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.6.2 (amazon) in debug mode Mac OS X/32 10.6.2 (amazon) w/C++ & FORTRAN, w/threadsafe, in production mode
* | [svn-r17760] Purpose: Fix problem with H5TB APINeil Fortner2009-10-271-2/+12
| | | | | | | | | | | | | | | | | | | | | | Description: The H5TB API makes some improper assumptions about the order of compound datatype members. Namely, it assumes that members remain in the order in which they were inserted. Unfortunately, this assumption is inherent in the design of the interface. The library has been patched so that this assumption holds in situations relevant to H5TB. Tested: jam, linew, amani (h5committest)
* | [svn-r17392] I added a detection for the correctness of converting from ↵Raymond Lu2009-08-201-2/+4
| | | | | | | | | | | | | | | | | | | | unsigned long to float in the configure.in. The Pathscale compiler on Sandia's Linux machine misinterprets the values of unsigned long as negative during the conversion to float, when the first bit of unsigned long is on. Tested on jam. Need to test it on Sandia's machine.
* | [svn-r17268] Description:Quincey Koziol2009-07-301-4/+0
| | | | | | | | | | | | | | | | | | | | | | Bring r17266 from 1.8 branch to trunk: Clean up various compiler warnings from IRIX64 build Tested on: Mac OS X/32 (amazon) debug & production (yes, I know it's not an IRIX64 system :-) Too minor to require h5committest
* | [svn-r17182] In my last round of checkin (r17177), I forgot to clean up some ↵Raymond Lu2009-07-141-1/+1
| | | | | | | | | | | | | | | | | | code. I'm checking in the fix now. Another minor fix - The way that H5Tset_size checks whether the datatype is a string wasn't correct. I changed it to use the macro H5T_IS_STRING. Tested on jam, smirom, and linew.
* | [svn-r17177] In H5Odtype.c, the decoding function used to mark the datatype ↵Raymond Lu2009-07-131-3/+11
| | | | | | | | | | | | | | | | | | | | as on disk (see bug #1585). I changed it to undefined and let the caller functions decide the location of the datatype. For H5Tdecode, it should mark the datatype as in memory. For other callers like H5Dopen or H5Aopen, they should makr it as on disk. Tested it on jam, smirom, linew.
* | [svn-r17025] Purpose: fix bug 1593Neil Fortner2009-06-101-98/+102
| | | | | | | | | | | | | | | | | | | | | | | | Description: When using H5T_copy on committed datatypes that are already open, H5T_copy would properly use the already existing shared struct, but would still deep copy all of the fields in that struct. This would cause memory leaks, and in the case of a compound containing a vlen (or reference), the change in size would cause the size of the resulting type to be set to an incorrect value. Changed H5T_copy to properly avoid deep copies when using a reopened shared struct. Tested: jam, linew, smirom (h5committest), purify on jam
* | [svn-r16489] Fixed bug #1459 by eliminating the macro long_long and ↵Allen Byrne2009-02-181-2/+2
| | | | | | | | | | | | | | | | | | | | | | replacing all instances with long long. Tested: h5comittest fedora 10 x64 Vista 32, VS2005, IVF101 XP32, Cygwin
* | [svn-r16473] Purpose: fix problems related to 'self-referential' attributesNeil Fortner2009-02-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Description: When an attribute was created with a datatype or dataspace that was shared in the same object header that the attribute was in, the attribute could not be deleted. Changes made to ensure that the attribute can be deleted both when the attribute is in the object header and when it is shared in the heap. Object header message decode routines now take an "open_oh" parameter to enable them to avoid opening the same object header twice. Tested: jam, smirom (h5committest)
* | [svn-r16347] Purpose: enhancements the H5Tinsert, H5TpackNeil Fortner2009-01-261-8/+13
| | | | | | | | | | | | | | | | | | | | | | | | Description: H5Tinsert will now detect when a compound type that was previously not packed becomes packed due to out of offset order insertion of a member. H5Tinsert will now attempt to keep members sorted by offset order. This should improve performance of H5Tinsert in all cases due to the fact that it no longer needs to check every other member for overlapping, and should improve performance of H5Tpack and possibly type conversion when compounds are packed out of order. Tested: jam, smirom (h5committest)
* | [svn-r15796] Purpose: Close bug #1322Neil Fortner2008-10-071-1/+1
| | | | | | | | | | | | | | | | | | Description: Fixes a possible datatype id leak that could occur during compound datatype conversion, or more precisely, when unregistering those conversions. Datatype ids normally registered by the library are no longer visible to the application via H5Fget_obj_ids and H5Fget_obj_count. Tested: kagiso, linew, smirom (h5committest)
* | [svn-r15682] Purpose: fix bug 1298Neil Fortner2008-09-221-4/+8
| | | | | | | | | | | | | | | | | | | | | | Description: The optimized "subset" compound conversion function would improperly copy the "blank" space at the end of compound types. Modified H5T_conv_struct_init to detect when the subset type has extra space at the end, and calculate the size of the data that should be copied into the conversion buffer for each element. Changes to the functions that implement these conversions. Tested: kagiso, linew, smirom (h5committest)
* | [svn-r15628] Description:Quincey Koziol2008-09-161-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | Remove trailing whitespace from C/C++ source files, with the following script: foreach f (*.[ch] *.cpp) sed 's/[[:blank:]]*$//' $f > sed.out && mv sed.out $f end Tested on: Mac OS X/32 10.5.5 (amazon) No need for h5committest, just whitespace changes...
* | [svn-r15609] Description:Quincey Koziol2008-09-101-283/+272
| | | | | | | | | | | | | | | | Omnibus compiler warning cleanup & some reformatting also. Tested on: Mac OS X/32 10.5.4 (amazon) Too minor to require h5committest
* | [svn-r15485] Purpose: Allow library to shut down properly when objects have ↵Neil Fortner2008-08-191-25/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | reference count > 1. Description: Added a new field 'app_count' to H5I_id_info_t struct, to track the reference count on an id due to the application. the old 'count' field tracks the total. Generally any id visible to the application gets placed in app_count. Added app_ref boolean parameter to H5I_inc_ref, H5I_dec_ref, H5I_register, H5I_clear_type, and a few other functions, to specify whether the operation(s) being performed on the id(s) are due to the application (TRUE) or not (FALSE). Test added for this case. Tested: kagiso, smirom, linew (h5committest)
* | [svn-r15458] Purpose: Modify the library to take the proper action when ↵inactive/jpeg_converterNeil Fortner2008-08-111-0/+5
|/ | | | | | | | | | | | | | files with incorrect datatype versions are encountered. Description: The library now recognizes some problems with datatype versions in H5O_decode_helper(), and, if not performing strict format checks, automatically corrects them. Framework added for other message decode routines to automatically correct file errors. Datatype version information added to h5debug. Tested: kagiso, smirom, linew (h5committest)
* [svn-r15188] Description:Quincey Koziol2008-06-101-7/+8
| | | | | | | | | | | | | | | | | | | Avoid leaking memory when copying the internal "shared" struct for a named datatype when it's already been opened earlier. Tested on: FreeBSD/32 6.2 (duty) in debug mode FreeBSD/64 6.2 (liberty) w/C++ & FORTRAN, in debug mode Linux/32 2.6 (kagiso) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe, in debug mode Linux/64-amd64 2.6 (smirom) w/default API=1.6.x, w/C++ & FORTRAN, in production mode Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN, in production mode Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN, w/szip filter, in production mode Mac OS X/32 10.5.3 (amazon) in debug mode Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in production mode
* [svn-r14903] Undoing change committed in r14902.Scot Breitenfeld2008-04-301-1/+1
|
* [svn-r14902] Merged fortran_1_8 branch changes r14505:14901 into the trunk. ↵Scot Breitenfeld2008-04-301-1/+1
| | | | New fortran wrappers added.
* [svn-r14860] Description:Quincey Koziol2008-04-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Omnibus raw data I/O revisions, with wide-ranging changes and refactoring, in order to prepare for implementing "fast append" feature. These changes remove the majority of the code duplication for raw data I/O which has crept in over the last ten years and introduces a more object- oriented design for operating on different types of dataset storage. Chunked storage no longer has it's own I/O routines, it is now handled as either contiguous (if chunk is not pulled into the cache) or compact (if the chunk is cached in memory). No bug or feature changes, at least intentionally... :-) Tested on: FreeBSD/32 6.2 (duty) in debug mode FreeBSD/64 6.2 (liberty) w/C++ & FORTRAN, in debug mode Linux/32 2.6 (kagiso) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe, in debug mode Linux/64-amd64 2.6 (smirom) w/default API=1.6.x, w/C++ & FORTRAN, in production mode Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN, in production mode Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN, w/szip filter, in production mode Mac OS X/32 10.5.2 (amazon) in debug mode Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in production mode
* [svn-r14212] Description:Quincey Koziol2007-10-181-3/+3
| | | | | | | | | | | | | | | | | | | | | | Make H5Tarray_create() and H5Tget_array_dims() versioned, and drop the "perm" parameter from the '2' versions. Shift internal library usage to '2' versions. Add simple regression tests for '1' versions. Tested on: FreeBSD/32 6.2 (duty) in debug mode FreeBSD/64 6.2 (liberty) w/C++ & FORTRAN, in debug mode Linux/32 2.6 (kagiso) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe, in debug mode Linux/64-amd64 2.6 (smirom) w/default API=1.6.x, w/C++ & FORTRAN, in production mode Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN, in production mode Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN, w/szip filter, in production mode Mac OS X/32 10.4.10 (amazon) in debug mode
* [svn-r14208] Description:Quincey Koziol2007-10-181-6/+26
| | | | | | | | | | | | | | | | | | | | Make H5Pget_filter_by_id() API versioned and switch internal usage to H5Pget_filter_by_id2(). Add simple regression test for H5Pget_filter_by_id1(). Tested on: FreeBSD/32 6.2 (duty) in debug mode FreeBSD/64 6.2 (liberty) w/C++ & FORTRAN, in debug mode Linux/32 2.6 (kagiso) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe, in debug mode Linux/64-amd64 2.6 (smirom) w/default API=1.6.x, w/C++ & FORTRAN, in production mode Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN, in production mode Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN, w/szip filter, in production mode Mac OS X/32 10.4.10 (amazon) in debug mode
* [svn-r14004] Description:Quincey Koziol2007-07-241-342/+142
| | | | | | | | | | | | Fix problem with datatype messages where the version of the format for a datatype message could depend on the "use the latest format" flag from the file after it was initially created. Tested on: FreeBSD/32 6.2 (duty) FreeBSD/64 6.2 (liberty) Linux/32 2.6 (kagiso) Mac OS X/32 10.4.10 (amazon)
* [svn-r13884] The second step of optimization for compound data for the ChicagoRaymond Lu2007-06-191-0/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | company. The I/O is optimized when the source and destination members are a subset of each other one way or another, and the order is the same, and no conversion is needed. For example: struct source { struct destination { TYPE1 A; --> TYPE1 A; TYPE2 B; --> TYPE2 B; TYPE3 C; --> TYPE3 C; }; TYPE4 D; TYPE5 E; }; or struct destination { struct source { TYPE1 A; --> TYPE1 A; TYPE2 B; --> TYPE2 B; TYPE3 C; --> TYPE3 C; }; TYPE4 D; TYPE5 E; }; The optimization is simply moving data from the source to the appropriate places in the buffer and bypass the reading of the background data and data conversion. Tested on smirom, liberty, sol, and copper.
* [svn-r13841] Description:Quincey Koziol2007-06-081-4/+30
| | | | | | | | | | Add a little more information to the debugging routine, for VL datatypes. Minor code cleanups Tested on: Mac OS X/32 10.4.9 (duty) Too minor to require h5committest
* [svn-r13753] Description:Quincey Koziol2007-05-141-34/+41
| | | | | | | | | | | | | Check in "unique, but sharable" optimization to ISOHM code, which allows object header messages that are only used in one object to remain in the sole user's header, but migrates messages that are used in more than one header into the ISOHM heap. Tested on: Mac OS X/32 10.4.9 (amazon) FreeBSD/32 6.2 (duty) Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r13635] Description:Quincey Koziol2007-04-111-2/+2
| | | | | | | Clean up code and reduce compiler warnings... Tested on: Mac OS X/32 10.4.9 (amazon)
* [svn-r13475] There's a configure issue linking szip's shared libraries when ↵Mike McGreevy2007-03-081-6/+6
| | | | | | | | | | | | running on kagiso. The static szip libraries are working as intended, but when shared szip libraries are present and intended for use they cannot be opened. A check has been implemented to test if shared szip libraries are functional on current platform. If they are not, and the user is trying to use them, szip is now disbaled and the user is informed. This issue occurs on kagiso, and the resolution was tested on kagiso.
* [svn-r13253] Updated all C and C++ style source code files with the THG ↵Albert Cheng2007-02-071-2/+3
| | | | | | | | | copyright notice. Tested platform: Kagiso only since it is only a comment block change. If it works in one machine, it should work in all, I hope. Still need to check the parallel build on copper.
* [svn-r13243] Description:Quincey Koziol2007-02-061-1/+1
| | | | | | | | | Add API routines for tracking & indexing the creation order on attributes. Tested on: Mac OS X/32 10.4.8 (amazon) FreeBSD/32 6.2 (duty)
* [svn-r13240] Description:Quincey Koziol2007-02-051-28/+28
| | | | | | | | | | More cleanups on the object header message handling code, to make it easier to work with and move forward on the creation order coding. Various other minor cleanups & warning fixes. Tested on: FreeBSD/32 6.2 (duty)
* [svn-r13232] Description:Quincey Koziol2007-02-041-39/+37
| | | | | | | | | Remove the "scaffolding" for shared message method invocation and simplify the way shared messages are dealt with in general. Tested on: FreeBSD/32 6.2 (duty) Mac OS X/32 10.4.8 (amazon)
* [svn-r13223] Description:Quincey Koziol2007-01-301-33/+35
| | | | | | | | | | | | Move datatype messages into new shared message method interface Clean up various formatting & compiler warnings Minor optimizations Tested on: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)