From 5f2b8eee135acaa09d5b6686e1abf472eb97ecc1 Mon Sep 17 00:00:00 2001 From: Quincey Koziol Date: Mon, 10 Jun 2002 10:19:19 -0500 Subject: [svn-r5560] Purpose: Bug Fix for bug #789 Description: Creating a 1-D dataset region reference caused the library to hang (go into an infinite loop). Solution: Corrected algorithm for serializing hyperslab regions. Platforms tested: FreeBSD 4.5 (sleipnir) --- release_docs/RELEASE.txt | 10 +- src/H5Shyper.c | 2 + test/trefer.c | 279 +++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 287 insertions(+), 4 deletions(-) diff --git a/release_docs/RELEASE.txt b/release_docs/RELEASE.txt index 1c3c174..82b311b 100644 --- a/release_docs/RELEASE.txt +++ b/release_docs/RELEASE.txt @@ -35,10 +35,12 @@ Bug Fixes since HDF5-1.4.0 Library ------- - * Fixed bug (#699, fix provided by a user) where a scalar dataspace was - written to the file and then subsequently queried with the - H5Sget_simple_extent_type function, type was reported H5S_SIMPLE instead - of H5S_SCALAR. EIP - 2002/06/04 + * Fixed bug (#789) where creating 1-D dataset region reference caused the + library to go into infinite loop. QAK - 2002/06/10 + * Fixed bug (#699, fix provided by a user) where a scalar dataspace was + written to the file and then subsequently queried with the + H5Sget_simple_extent_type function, type was reported H5S_SIMPLE instead + of H5S_SCALAR. EIP - 2002/06/04 * Clear symbol table node "dirty" flag when flushing symbol tables to disk, to reduce I/O calls made & improve performance. QAK - 2002/06/03 * Fixed bug where an object's header could get corrupted in certain obscure diff --git a/src/H5Shyper.c b/src/H5Shyper.c index 1d92137..1d14592 100644 --- a/src/H5Shyper.c +++ b/src/H5Shyper.c @@ -5152,6 +5152,8 @@ H5S_hyper_select_serialize (const H5S_t *space, uint8_t *buf) temp_dim--; } /* end while */ } /* end if */ + else + break; /* Break out now, for 1-D selections */ /* Re-compute offset array */ for(i=0; i