[svn-r11151] Purpose: Fix bugzilla #407 and #408

Description:
    PropList::copyProp has incorrect prototype; although it works,
    it does cause users inconvenience.

Solution:
    Added another overloaded function with correct prototype.  The
    old version will be removed in a future release.  In the meantime,
    "Obsolete" will be displayed in its RM page.

    Also, changed several checks on the returned value of a C API from
    non-positive to negative because id = 0 is no longer significant,
    now that the C++ reference counting had been removed.

Platforms tested:
    Linux 2.4 (heping)
    IRIX64 with -n32 (modi4)
    Linux 2.4 w/PGI (colonelk)
This commit is contained in:
Binh-Minh Ribler
2005-07-24 22:37:21 -05:00
parent f208550696
commit fab172d704
14 changed files with 65 additions and 28 deletions

View File

@@ -45,7 +45,7 @@ const DataSpace DataSpace::ALL( H5S_ALL );
DataSpace::DataSpace( H5S_class_t type ) : IdComponent()
{
id = H5Screate( type );
if( id <= 0 )
if( id < 0 )
{
throw DataSpaceIException("DataSpace constructor", "H5Screate failed");
}
@@ -63,7 +63,7 @@ DataSpace::DataSpace( H5S_class_t type ) : IdComponent()
DataSpace::DataSpace( int rank, const hsize_t * dims, const hsize_t * maxdims) : IdComponent()
{
id = H5Screate_simple( rank, dims, maxdims );
if( id <= 0 )
if( id < 0 )
{
throw DataSpaceIException("DataSpace constructor", "H5Screate_simple failed");
}
@@ -113,7 +113,7 @@ void DataSpace::copy( const DataSpace& like_space )
// call C routine to copy the dataspace
id = H5Scopy( like_space.getId() );
if( id <= 0 )
if( id < 0 )
throw DataSpaceIException("DataSpace::copy", "H5Scopy failed");
}