diff --git a/crpptbx/TCV/gdat_tcv.m b/crpptbx/TCV/gdat_tcv.m
index 62815d56b00a2dc6747c6a2a724437dfff3d476a..50b6fcaf7f36a745ebe1b1aa99ccb05112e1f139 100644
--- a/crpptbx/TCV/gdat_tcv.m
+++ b/crpptbx/TCV/gdat_tcv.m
@@ -586,6 +586,10 @@ elseif strcmp(mapping_for_tcv.method,'switchcase')
     cxrs_params.k_plot = cxrs_plot;
     cxrs_profiles = CXRS_get_profiles(shot,[1 2 3],time_interval,cxrs_params);
     inb_times = length(cxrs_profiles.Times);
+    if isempty(cxrs_profiles.Times) || ~isfield(cxrs_profiles,'proffit')
+      if (gdat_params.nverbose>=1); warning(['problems loading data with CXRS_get_profiles for data_request= ' data_request_eff]); end
+      return
+    end
     inb_channels =120; % need to change if gets bigger!!! but easier to prefill with NaNs and use the "use" part
     for i=1:length(sub_nodes)
       sub_eff = sub_nodes{i};