diff --git a/crpptbx/TCV/gdat_tcv.m b/crpptbx/TCV/gdat_tcv.m
index d872c08c3f9a3d82824c8be975fb2d1404403252..4e812e38c38d3c9c39e93427bd2cd3fdc3aceee0 100644
--- a/crpptbx/TCV/gdat_tcv.m
+++ b/crpptbx/TCV/gdat_tcv.m
@@ -297,7 +297,6 @@ end
 % Specifications on how to get the data provided in tcv_requests_mapping
 mapping_for_tcv = tcv_requests_mapping(data_request_eff,shot);
 gdat_data.label = mapping_for_tcv.label;
-
 ishot=NaN;
 if do_mdsopen_mdsclose
   % mdsdefaultserver tcv1.epfl.ch; % should be in tcv general path, but set-it in the meantime...
@@ -485,7 +484,7 @@ elseif strcmp(mapping_for_tcv.method,'expression')
     error_status=801;
     return
   end
-  tmp_fieldnames = fieldnames(gdat_tmp);
+  tmp_fieldnames = setdiff(fieldnames(gdat_tmp),{'gdat_request','label'}); % could/should also remove label in any case
   if sum(strcmp(tmp_fieldnames,'data'))==0 % note: cannot do isfield since gdat_tmp might be an object
     if (gdat_params.nverbose>=1); warning(['expression does not return a child name ''data'' for ' data_request_eff]); end
   end