Merge branch 'develop' of ssh://git.ecmwf.int/eccodes/eccodes into develop

This commit is contained in:
Shahram Najm 2022-12-27 13:20:11 +00:00
commit 8cc0934e4d
3 changed files with 17 additions and 3 deletions

View File

@ -3380,6 +3380,9 @@ static int process_elements(grib_accessor* a, int flag, long onlySubset, long st
}
}
if (subsetList)
grib_context_free(c, subsetList);/* ECC-1498 */
return err;
}

View File

@ -1279,9 +1279,8 @@ static int compare_all_dump_keys(grib_handle* handle1, grib_handle* handle2, gri
}
}
iter = grib_keys_iterator_new(handle1, 0, NULL);
if (!iter) {
grib_context_log(context, GRIB_LOG_ERROR, "unable to create keys iterator");
grib_context_log(context, GRIB_LOG_ERROR, "unable to create the BUFR keys iterator");
exit(1);
}

View File

@ -260,6 +260,9 @@ int grib_tool_init(grib_runtime_options* options)
const char* filename[1];
filename[0] = options->infile_extra->name; /* First file */
options->random = 1;
/* Setting 'orderby' will cause the second file to also be read as a sorted fieldset
* See file: grib_tool.c function: grib_tool
*/
options->orderby = strdup(orderby);
options->idx = grib_fieldset_new_from_files(context, filename,
nfiles, 0, 0, 0, orderby, &ret);
@ -1133,6 +1136,7 @@ static int compare_handles(grib_handle* h1, grib_handle* h2, grib_runtime_option
int i = 0;
const char* name = NULL;
grib_keys_iterator* iter = NULL;
grib_context* context = handle1->context;
/* mask only if no -c option or headerMode (-H)*/
if (blocklist && (!listFromCommandLine || headerMode)) {
@ -1145,6 +1149,14 @@ static int compare_handles(grib_handle* h1, grib_handle* h2, grib_runtime_option
} */
}
#if 0
{
long of1,of2; /* Debugging: print offset of each handle */
grib_get_long(h1, "offset", &of1); grib_get_long(h2, "offset", &of2);
printf("of1=%lu of2=%lu\n",of1,of2);
}
#endif
if (headerMode) {
const void *msg1 = NULL, *msg2 = NULL;
size_t size1 = 0, size2 = 0;
@ -1161,7 +1173,7 @@ static int compare_handles(grib_handle* h1, grib_handle* h2, grib_runtime_option
iter = grib_keys_iterator_new(h11, GRIB_KEYS_ITERATOR_SKIP_COMPUTED, NULL);
if (!iter) {
printf("ERROR: unable to get keys iterator\n");
grib_context_log(context, GRIB_LOG_ERROR, "unable to create the GRIB keys iterator");
exit(1);
}