diff options
Diffstat (limited to 'libcrystfel')
-rw-r--r-- | libcrystfel/src/datatemplate.c | 2 | ||||
-rw-r--r-- | libcrystfel/src/detgeom.c | 2 |
2 files changed, 4 insertions, 0 deletions
diff --git a/libcrystfel/src/datatemplate.c b/libcrystfel/src/datatemplate.c index 12d4d85f..26d0bd06 100644 --- a/libcrystfel/src/datatemplate.c +++ b/libcrystfel/src/datatemplate.c @@ -1912,6 +1912,8 @@ struct detgeom *create_detgeom(struct image *image, detgeom = malloc(sizeof(struct detgeom)); if ( detgeom == NULL ) return NULL; + detgeom->top_group = NULL; + detgeom->panels = malloc(dtempl->n_panels*sizeof(struct detgeom_panel)); if ( detgeom->panels == NULL ) { free(detgeom); diff --git a/libcrystfel/src/detgeom.c b/libcrystfel/src/detgeom.c index 3516d996..b4835317 100644 --- a/libcrystfel/src/detgeom.c +++ b/libcrystfel/src/detgeom.c @@ -68,6 +68,8 @@ static void free_group(struct detgeom_panel_group *g) { int i; + if ( g == NULL ) return; + for ( i=0; i<g->n_children; i++ ) { free_group(g->children[i]); } |