summaryrefslogtreecommitdiffstats
path: root/src/H5Oattr.c
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r17980] Description:Quincey Koziol2009-12-101-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bring Coverity changes into the trunk: (also other minor cleanups) r17955: Fix Coverity item 24. Add missing error condition to H5AC_ext_config_2_int_config. r17956: Fix Coverity item 24. Improve error checking in H5A_compact_build_table_cb. r17957: Fix Coverity item 150. Fix warning in H5A_compact_build_table_cb. r17958: Fix Coverity item 117. Fix error handling in H5B_shared_new. r17959: Fix Coverity item 209. Added an assertion for leaf->shared in H5B2_cache_leaf_dest. r17960: Fix Coverity item 208. Added an assertion for internal->shared in H5B2_cache_internal_dest. r17961: Fix Coverity item 89. Reworked the code to avoid array overrun in H5C__autoadjust__ageout__insert_new_marker. r17962: Fix for coverity Resource_leak 195,203,204,205. r17963: Fix Coverity item 44. Prevented potential NULL dereference in H5D_btree_debug. r17964: Fix Coverity issues #197, 198 & 199: memory not being released. (Also clean up other resource leaks in nearby and/or similar code). r17965: Fix Coverity issue #151: release resources on error r17966: Fix Coverity issue #187: Remove leftover code remnant from prior bugfix which was causing resource leak of open files. r17967: Fixed Coverity issues # 193 & 194. Removed unnecessary memory allocation and added comparison of length of path parameter to the size of the destination buffer in h5import.h/h5import.c. r17968: Fix Coverity item 144. Fixed memory leak on error in H5D_chunk_copy. r17969: Fix for coverity Resource_leak #196. r17970: Coverity 167-173: Initialized pointer of buffers. In error handling, closed types and free memory. 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-r17268] Description:Quincey Koziol2009-07-301-1/+1
| | | | | | | | | | | 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-r17177] In H5Odtype.c, the decoding function used to mark the datatype ↵Raymond Lu2009-07-131-1/+7
| | | | | | | | | | 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-r17119] Bug fix #1513. Reading an empty attribute caused seg fault. ↵Raymond Lu2009-06-261-6/+0
| | | | | | | | | | | | The flag "initialized" in the attribute structure wan't set correctly. It caused some confusion in H5A_read. This flag was actually redundant because the library can alwasy check if the data buffer is present. To fix it, I removed the "initialized" flag in the attribute structure and let H5A_read check the data buffer. Tested on jam, smirom, and linex.
* [svn-r16477] Purpose: Fix problem with opening an attribute multiple times ↵Neil Fortner2009-02-121-1/+1
| | | | | | | | | | | | | | | through multiple file handles. Description: An attribute's "oloc" field which specifies the file it resides in was located in the attribute's "shared" structure. So when an attribute was opened multiple times all of the handles for that attribute pointed to the same file id, even if different file id's were used to open the different handles for the attribute. The "oloc" has been moved to the top level H5A_t struct. Tested: jam, smirom (h5committest)
* [svn-r16473] Purpose: fix problems related to 'self-referential' attributesNeil Fortner2009-02-121-5/+7
| | | | | | | | | | | | 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-r16386] Fix various warnings (errors in pgcc) associated with ↵Neil Fortner2009-01-301-3/+0
| | | | | | | | yesterday's dense attribute object copy commit. Tested: jam (gcc and pgcc)
* [svn-r16380] Purpose: Enable copying of dense attributesNeil Fortner2009-01-291-277/+6
| | | | | | | | | Description: Attribute object copy routines have been moved from H5Oattr.c to H5Aint.c. These routines are now shared between compact and densely stored attributes. New routines written to support the copying of dense attributes. This patch wasmostly written by Peter Cao. Tested: jam, smirom (h5committest)
* [svn-r15628] Description:Quincey Koziol2008-09-161-6/+6
| | | | | | | | | | | | | 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-6/+5
| | | | | | | | 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-6/+6
| | | | | | | | | | | | | | | | 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-4/+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-r15395] When an attribute was opened twice and data was written with ↵Raymond Lu2008-07-221-137/+160
| | | | | | | | | | | one of the handles, the file didn't have the data. It happened because each handle had its own object structure, and the empty one overwrote the data with fill value. This is fixed by making some attribute information like the data be shared in the attribute structure. Tested on smirom, kagiso, and linew.
* [svn-r14271] Description:Quincey Koziol2007-11-201-1/+1
| | | | | | | | | | | | | | | | | | | Avoid copying maximum dimensions for temporary dataspaces used for describing chunks during raw data I/O. 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 Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in production mode
* [svn-r13989] Description:Quincey Koziol2007-07-191-1/+2
| | | | | | | | | | | Rename H5A_get_version() to H5A_set_version() and actually set the attributes version in the routine. Tested on: Mac OS X/32 10.4.10 (amazon) FreeBSD/32 6.2 (duty) Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r13988] Description:Quincey Koziol2007-07-181-78/+24
| | | | | | | | | Fix bug where the version of an attribute would change after it was created, causing the amount of space used to encode it to change. Tested on: Mac OS X/32 10.4.10 (amazon) FreeBSD/32 6.2 (duty)
* [svn-r13825] Description:Quincey Koziol2007-05-311-1/+1
| | | | | | | | | Incremental step forward in fixing problems with fill values that have a variable-length daattype. This set of changes fixes problems with the copying the property list values. tested Tn: Mac OS X/32 10.4.9 (amazon)
* [svn-r13821] Peter Cao2007-05-301-1/+4
| | | | | | | | | | | | | | | | | | | | | Fixed a bug at copying shared reg_ref attribute. The ref values of an attribute was not writen in file. The post_copy_file() at H5Oattr.c only updates the value in memory. To fix the problem, we added H5O_shared_post_copy_file(), which delete the attribute in file (with the incorrect value) and create an new attribute with the correct values. I added the following functions: H5Oshared.c:H5O_shared_post_copy_file(H5F_t *f, hid_t dxpl_id, H5O_t *oh, void *mesg); H5Oshared.h: H5O_SHARED_POST_COPY_FILE and modified the following files to include shared_post_copy_file() H5Oattr.c H5Odtype.c H5Ofill.c H5Opline.c H5Osdspace.c
* [svn-r13753] Description:Quincey Koziol2007-05-141-67/+37
| | | | | | | | | | | | | 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-r13711] Description:Quincey Koziol2007-04-301-1/+1
| | | | | | | | Reduce size of fill value message in default setting case (since it can't be eliminated). Tested on: Mac OS X/32 10.4.9 (amazon)
* [svn-r13486] Description:Quincey Koziol2007-03-101-25/+28
| | | | | | | | | Move attribute tracking information out of object header prefix and make it into a message that is inserted only when attributes are present on the object. Tested on: FreeBSD/32 6.2 (duty)
* [svn-r13467] Move copying ref attribute to post copy because ↵Peter Cao2007-03-061-24/+70
| | | | | | | H5O_post_copy_file() fails at the case that an object may have a reference attribute that points to the object itself.
* [svn-r13457] Fix problem on copying reg_ref attributes.Peter Cao2007-03-051-1/+2
|
* [svn-r13362] Description:Quincey Koziol2007-02-211-22/+45
| | | | | | | | | | | Eliminate unneeded new version in attribute encoding. Add character set & string padding to string datatype debugging output Add character set to attribute name debugging output Tested on: Mac OS X/32 10.4.8 (duty)
* [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-r13248] Description:Quincey Koziol2007-02-061-8/+8
| | | | | | | | | More progress on creation order for attribbutes - they are now basically working for "compact" attribute storage. Tested on: FreeBSD/32 6.2 (duty) Mac OS X/32 10.4.8 (amazon)
* [svn-r13240] Description:Quincey Koziol2007-02-051-3/+3
| | | | | | | | | | 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-183/+38
| | | | | | | | | 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-r13226] Description:Quincey Koziol2007-01-311-6/+6
| | | | | | | | | | Add attributes to the message classes that use the shared message method calling interface, completing the transition. The other mechanism will be removed shortly. Tested on: Mac OS X/32 10.4.8 (amazon) FreeBSD/32 6.2 (duty)
* [svn-r13223] Description:Quincey Koziol2007-01-301-87/+13
| | | | | | | | | | | | 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)
* [svn-r13219] Description:Quincey Koziol2007-01-291-29/+7
| | | | | | | | | | | Move dataspace messages into new shared header message method calling scheme. Minor other cleanups, etc. Tested on: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r13187] Fixed another issue with H5Ocopy when attributes had shared ↵James Laird2007-01-241-1/+16
| | | | | | | | | datatypes/ dataspaces that became un-shared in the destination. Tested on Windows, smirom, and kagiso. Need to extend objcopy test so that it checks that attributes are actually copied successfully.
* [svn-r13177] Description:Quincey Koziol2007-01-231-16/+16
| | | | | | | | Final tweaks before the big twist to fix shared message method calling. Tested on: Mac OS X/32 10.4.8 (amazon) FreeBSD/32 6.2 (duty)
* [svn-r13176] Description:Quincey Koziol2007-01-231-24/+12
| | | | | | | | Push code further toward shared message method calling refactor. Tested on: FreeBSD/32 6.2 (duty) Too minor to require h5committest
* [svn-r13173] Description:Quincey Koziol2007-01-221-3/+1
| | | | | | | | | Checkpoint more progress toward implementing shared message "interface" methods for message classes that can have messages shared. Tested on: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r13158] Description:Quincey Koziol2007-01-191-0/+18
| | | | | | | | | Checkpoint work on the shared header message refactor while I fix fill value handling. Tested on: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r13156] Description:Quincey Koziol2007-01-191-4/+4
| | | | | | | | | Begin refactoring code to straighten out the contorted code that handles shared messages. Tested on: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r13155] Description:Quincey Koziol2007-01-191-64/+126
| | | | | | | | | | | | | | Add "set_crt_index" and "get_crt_index" methods for the object header message class. Unify fractal heap definitions for shared messages and attributes, under "object header" fractal heap definitions. Initial code for adding creation order index to object header messages. Tested on: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r13152] Description:Quincey Koziol2007-01-181-5/+5
| | | | | | | | | | | Add anotherdense/shared attribute test. Clean up minor attribute/object header codelets, in preparation for adding creation index to attributes. Tested on: Mac OS X/32 10.4.8 (amazon) FreeBSD/32 6.2 (duty)
* [svn-r13143] Refactoring.James Laird2007-01-161-0/+1
| | | | | | | | | | | | | | Added can_share callback for OH messages. This determines whether the message is allowed to be shared in the heap (committed and immutable datatypes can't be). Fixed a bug in the dense attribute storage that tried to open the shared message heap when it hadn't been created yet. Made the test to extend shared dataspace messages a bit more robust. Refactored the code the searches a shared message list index to be a little more efficient. A few other minor changes. Tested on smirom, kagiso, Windows, and juniper.
* [svn-r13135] Continuing code cleanup.James Laird2007-01-111-6/+1
| | | | | | | | | Moved SOHM table version out of table encoding and completely into superblock. This is a file format change. Added test that extends shared dataspaces. Dynamically allocate arrays in shared message cache code. Clean up comments. Tested on windows, kagiso, smirom.
* [svn-r13130] Description:Quincey Koziol2007-01-101-17/+19
| | | | | | | | | Further tests & bugfixes for shared/committed components of shared/un- shared attributes using dense/compact storage. Tested on: Mac OS X/32 10.4.8 (amazon) FreeBSD/32 6.1 (duty)
* [svn-r13128] Description:Quincey Koziol2007-01-091-3/+3
| | | | | | | | | | More progress on address bugs in combinations of shared/committed/unshared components of shared/unshared attributes in compact/dense storage. (Yes, there are a lot of combinations. :-) Tested on: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r13121] Description:Quincey Koziol2007-01-081-17/+11
| | | | | | | | | | Add support & tests for using shared datatypes with shared & un-shared attributes. Involves some fairly icky code to make the "copy on write" paradigm for shared attributes work. Tested on: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r13104] Description:Quincey Koziol2007-01-031-9/+9
| | | | | | | | | Add support for renaming compact & dense/shared & non-shared attributes in all cases. Tested on: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r13096] Description:Quincey Koziol2007-01-021-6/+13
| | | | | | | | Fix updating values of shared attributes in dense storage & add test. Tested on: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r13079] Description:Quincey Koziol2006-12-191-2/+1
| | | | | | | | | | | | | | | | | | Add more tests for checking that writing to shared attributes works correctly. (Looks like it still has a bug when dense storage is used, which I'll correct shortly). Add testing routine to shared message code, to retrieve reference count for a shared message. Add fractal heap 'op' callback for efficiently computing the hash value of an existing encoded message in the shared message fractal heap. Various minor cleanups and warning placations. Tested on: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r13074] Description:Quincey Koziol2006-12-191-4/+4
| | | | | | | | | | | | | | | | | Add support for opening attributes in dense and/or shared storage by index. Move routines for building and operating on tables of attributes into separate source module. Fix bug where reverting from "dense" to "compact" storage would 'unshare' attributes. Minor code cleanups, etc. Tested on: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r13065] Added support for copying shared messages (including turning ↵James Laird2006-12-151-49/+85
| | | | | | | | | | | | unshared messages to shared messages and vice versa). Extended objcopy test to test all "permutations" of shared/unshared and new/old group format. If this proves to take a long time to test, I'll go back and have it run fewer tests when HDF5_TEST_EXPRESS is enabled. Tested on smirom, kagiso, copper, and Windows.
* [svn-r13058] Description:Quincey Koziol2006-12-131-37/+33
| | | | | | | | | | | Clean up some shared message operations and other minor tweaks, in the process of trying to solve the messy way that shared object header messages are implemented in general (not James' work - which is fine :-) Tested on: Mac OS X/32 10.4.8 (amazon) FreeBSD/32 4.11 (sleipnir) AIX/32 5.? (copper)