aboutsummaryrefslogtreecommitdiff
path: root/libcrystfel/src/datatemplate.c
diff options
context:
space:
mode:
Diffstat (limited to 'libcrystfel/src/datatemplate.c')
-rw-r--r--libcrystfel/src/datatemplate.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/libcrystfel/src/datatemplate.c b/libcrystfel/src/datatemplate.c
index 4ec96cfd..e97ae3df 100644
--- a/libcrystfel/src/datatemplate.c
+++ b/libcrystfel/src/datatemplate.c
@@ -2003,9 +2003,14 @@ struct detgeom *create_detgeom(struct image *image,
detgeom->n_panels = dtempl->n_panels;
if ( two_d_only ) {
- if ( !detector_flat(dtempl) ) return NULL;
- if ( dtempl->shift_x_from != NULL ) return NULL;
- if ( dtempl->shift_y_from != NULL ) return NULL;
+ if ( !detector_flat(dtempl)
+ || (dtempl->shift_x_from != NULL)
+ || (dtempl->shift_y_from != NULL) )
+ {
+ free(detgeom->panels);
+ free(detgeom);
+ return NULL;
+ }
}
for ( i=0; i<dtempl->n_panels; i++ ) {