summaryrefslogtreecommitdiffstats
path: root/src/H5D.c
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@hdfgroup.org>2004-01-19 20:59:44 (GMT)
committerQuincey Koziol <koziol@hdfgroup.org>2004-01-19 20:59:44 (GMT)
commit618e7e7fbb5d7112ba38eb680d4b2a5b5c15adc1 (patch)
treea5fd1359d9920099316a7e5e5fabe9c403c03dd3 /src/H5D.c
parent99208cee65ea33ce3e5b91a96aa51cdb64e26700 (diff)
downloadhdf5-618e7e7fbb5d7112ba38eb680d4b2a5b5c15adc1.zip
hdf5-618e7e7fbb5d7112ba38eb680d4b2a5b5c15adc1.tar.gz
hdf5-618e7e7fbb5d7112ba38eb680d4b2a5b5c15adc1.tar.bz2
[svn-r8082] Purpose:
Bug fix Description: Tweak address comparison of external file list's heap address a bit to pacify Windows. Platforms tested: FreeBSD 4.9 (sleipnir) Asking Pedro to test on Windows Too minor to require h5committest
Diffstat (limited to 'src/H5D.c')
-rw-r--r--src/H5D.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/H5D.c b/src/H5D.c
index 34c9642..812979c 100644
--- a/src/H5D.c
+++ b/src/H5D.c
@@ -642,8 +642,12 @@ H5D_crt_ext_file_list_cmp(const void *value1, const void *value2, size_t size)
assert(size==sizeof(H5O_efl_t));
/* Check the heap address of external file lists */
- if((cmp_value=H5F_addr_cmp(efl1->heap_addr,efl2->heap_addr))!=0)
- HGOTO_DONE(cmp_value);
+ if(H5F_addr_defined(efl1->heap_addr) || H5F_addr_defined(efl2->heap_addr)) {
+ if(!H5F_addr_defined(efl1->heap_addr) && H5F_addr_defined(efl2->heap_addr)) HGOTO_DONE(-1);
+ if(H5F_addr_defined(efl1->heap_addr) && !H5F_addr_defined(efl2->heap_addr)) HGOTO_DONE(1);
+ if((cmp_value=H5F_addr_cmp(efl1->heap_addr,efl2->heap_addr))!=0)
+ HGOTO_DONE(cmp_value);
+ } /* end if */
/* Check the number of allocated efl entries */
if(efl1->nalloc < efl2->nalloc) HGOTO_DONE(-1);