Thanks Quincey,

I have been assuming this, but I had a sudden attack of doubt.

Matt

On Wed, Sep 1, 2010 at 11:01 AM, Quincey Koziol <[email protected]> wrote:
> Hi Matt,
>
> On Sep 1, 2010, at 9:56 AM, Matt Calder wrote:
>
>> Hi,
>>
>> This is perhaps a silly question, but if I create a resource, say:
>>
>> hid_t did = H5Dopen( loc_id, "data" );
>>
>> and then test,
>>
>> if (did >= 0) {
>>
>> }
>>
>> does it matter if I put the H5Dclose inside or outside the if-block?
>> Does one leak resources in the case where did < 0 and the did is not
>> closed? And, is the behavior the same for all the HDF api functions? I
>> did not see any specific mention in the docs.
>
>        If H5Dopen (or any other function which returns an ID) fails (and 
> returns a negative value), the HDF5 library will not leak resources.  BTW, 
> the [negative] ID value returned when one of these routines fails would be 
> rejected by the object close routine.  It's analogous to malloc() returning 
> NULL, you can't pass NULL into free().
>
>        Quincey
>
>
> _______________________________________________
> Hdf-forum is for HDF software users discussion.
> [email protected]
> http://mail.hdfgroup.org/mailman/listinfo/hdf-forum_hdfgroup.org
>

_______________________________________________
Hdf-forum is for HDF software users discussion.
[email protected]
http://mail.hdfgroup.org/mailman/listinfo/hdf-forum_hdfgroup.org

Reply via email to