mirror of
https://github.com/HDFGroup/hdf5.git
synced 2025-01-24 15:25:00 +08:00
5b876c929f
Clean up warnings, enable new compiler warning flag(s) and bring back changes from Coverity branch: r20813: Remove the dead code as listed for coverity bug #1722. h5committested. r20814: Issue 69: Check return value and throw error if negative return. Also free datatype id on error r20815: Use HDstrncpy. --gh r20816: Replaced one last HDstrcat call with HDstrncat to resolve coverity issue 832. r20817: Use HDstrncpy and HDstrncat. --gh r20818: Purpose: Fix valgrind issues with h5jam Description: Modified h5jam to free strings strdup'd in parse_command_line before exit. Note that they may still not be freed in case of error, due to the widespread use of exit(). r20819: Issue 80: change loop to use int as loop index. r20820: Maintenance: Fixed the bug found by coverity CID 788 There were two problems with this function: 1) it tried to unnecessary free NULL pointer 2) it tried to allocate c_name buffer that is done by H5Pget_class_name Tested on: Mac OSX 10.8.4 (amazon) w/gcc 4.8.1, C++ & FORTRAN (too minor to require h5committest)
55 lines
2.6 KiB
C
55 lines
2.6 KiB
C
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
|
* Copyright by The HDF Group. *
|
|
* Copyright by the Board of Trustees of the University of Illinois. *
|
|
* All rights reserved. *
|
|
* *
|
|
* This file is part of HDF5. The full HDF5 copyright notice, including *
|
|
* terms governing use, modification, and redistribution, is contained in *
|
|
* the files COPYING and Copyright.html. COPYING can be found at the root *
|
|
* of the source code distribution tree; Copyright.html can be found at the *
|
|
* root level of an installed copy of the electronic HDF5 document set and *
|
|
* is linked from the top-level documents page. It can also be found at *
|
|
* http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
|
|
* access to either file, you may request a copy from help@hdfgroup.org. *
|
|
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
|
|
#ifndef H5DUMP_DEFINES_H__
|
|
#define H5DUMP_DEFINES_H__
|
|
|
|
#define H5DUMP_MAX_RANK H5S_MAX_RANK
|
|
|
|
#define ATTRIBUTE_DATA 0
|
|
#define DATASET_DATA 1
|
|
#define ENUM_DATA 2
|
|
#define COL 3
|
|
|
|
/* Macros for displaying objects */
|
|
#define begin_obj(obj,name,begin) \
|
|
do { \
|
|
if ((name)) \
|
|
PRINTSTREAM(rawoutstream, "%s \"%s\" %s", (obj), (name), (begin)); \
|
|
else \
|
|
PRINTSTREAM(rawoutstream, "%s %s", (obj), (begin)); \
|
|
} while(0);
|
|
|
|
#define end_obj(obj,end) \
|
|
do { \
|
|
if(HDstrlen(end)) { \
|
|
PRINTSTREAM(rawoutstream, "%s", end); \
|
|
if(HDstrlen(obj)) \
|
|
PRINTVALSTREAM(rawoutstream, " "); \
|
|
} \
|
|
if(HDstrlen(obj)) \
|
|
PRINTSTREAM(rawoutstream, "%s", obj); \
|
|
} while(0);
|
|
|
|
|
|
/* 3 private values: can't be set, but can be read.
|
|
Note: these are defined in H5Zprivate, they are
|
|
duplicated here.
|
|
*/
|
|
#define H5_SZIP_LSB_OPTION_MASK 8
|
|
#define H5_SZIP_MSB_OPTION_MASK 16
|
|
#define H5_SZIP_RAW_OPTION_MASK 128
|
|
|
|
#endif /* !H5DUMP_DEFINES_H__ */
|