summaryrefslogtreecommitdiffstats
path: root/hl
diff options
context:
space:
mode:
authorlrknox <lrknox>2017-04-04 19:42:58 (GMT)
committerlrknox <lrknox>2017-04-04 19:42:58 (GMT)
commite014219770564d9603e96e170592e21a617d098f (patch)
treeb1811f2513b28f32f97f62a55939a808075d51c2 /hl
parent7b822f3d7df4bf3f35911b7efd61def3cd3012b9 (diff)
parentd522632b9e1f1d88db2117e89f3caba0dc4cf38b (diff)
downloadhdf5-e014219770564d9603e96e170592e21a617d098f.zip
hdf5-e014219770564d9603e96e170592e21a617d098f.tar.gz
hdf5-e014219770564d9603e96e170592e21a617d098f.tar.bz2
Merge branch 'develop' into hdf5_1_10_1
Diffstat (limited to 'hl')
-rw-r--r--hl/tools/h5watch/h5watch.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/hl/tools/h5watch/h5watch.c b/hl/tools/h5watch/h5watch.c
index 97dca7a..f37b2b4 100644
--- a/hl/tools/h5watch/h5watch.c
+++ b/hl/tools/h5watch/h5watch.c
@@ -43,6 +43,7 @@ static int g_display_width = 80; /* output width in characters */
static hbool_t g_simple_output = FALSE; /* make output more machine-readable */
static unsigned g_retry = DEFAULT_RETRY; /* # of times to try opening the file if somehow file is unstable */
static hbool_t g_display_hex = FALSE; /* display data in hexadecimal format : LATER */
+static hbool_t g_user_interrupt = FALSE; /* Flag to indicate that user interrupted execution */
static herr_t doprint(hid_t did, hsize_t *start, hsize_t *block, int rank);
static herr_t slicendump(hid_t did, hsize_t *prev_dims, hsize_t *cur_dims,
@@ -337,7 +338,8 @@ monitor_dataset(hid_t fid, char *dsetname)
goto done;
}
- while(1) {
+ /* Loop until an error occurs or the user interrupts execution */
+ while(!g_user_interrupt) {
/* Refreshes the dataset */
if(H5Drefresh(did) < 0) {
@@ -798,9 +800,8 @@ parse_command_line(int argc, const char *argv[])
*/
static void catch_signal(int H5_ATTR_UNUSED signo)
{
- /* Exit from h5watch */
- leave(EXIT_SUCCESS);
-
+ /* Set the flag to get out of the main loop */
+ g_user_interrupt = TRUE;
} /* catch_signal() */