diff --git a/GUI/coregui/Models/DataItem.h b/GUI/coregui/Models/DataItem.h
index 4a0b32c71b5e1199cf1711578e96f2970151798a..532d40765b96a64a5416771473ccbc146a6f6e64 100644
--- a/GUI/coregui/Models/DataItem.h
+++ b/GUI/coregui/Models/DataItem.h
@@ -60,7 +60,7 @@ public:
 
     //! Returns data to the state defined by user (imported)
     //! data.
-    virtual void reset(const ImportDataInfo& data) = 0;
+    virtual void reset(ImportDataInfo data) = 0;
 
 protected:
     DataItem(const QString& modelType);
diff --git a/GUI/coregui/Models/IntensityDataItem.cpp b/GUI/coregui/Models/IntensityDataItem.cpp
index e14581454bad88fca09689858882a6f79555874b..24886315210037bf88bd2b86a9b392927257bca5 100644
--- a/GUI/coregui/Models/IntensityDataItem.cpp
+++ b/GUI/coregui/Models/IntensityDataItem.cpp
@@ -225,7 +225,7 @@ std::vector<int> IntensityDataItem::shape() const
     return {getNbinsX(), getNbinsY()};
 }
 
-void IntensityDataItem::reset(const ImportDataInfo& data)
+void IntensityDataItem::reset(ImportDataInfo data)
 {
     assert(data.unitsLabel() == Constants::UnitsNbins);
     ComboProperty combo = ComboProperty() << data.unitsLabel();
@@ -236,7 +236,7 @@ void IntensityDataItem::reset(const ImportDataInfo& data)
     setYaxisTitle(data.axisLabel(1));
     MaskUnitsConverter converter;
     converter.convertToNbins(this);
-    setOutputData(data.intensityData().release());
+    setOutputData(std::move(data).intensityData().release());
     setAxesRangeToData();
     converter.convertFromNbins(this);
 }
diff --git a/GUI/coregui/Models/IntensityDataItem.h b/GUI/coregui/Models/IntensityDataItem.h
index aa70e846a87cff994f2e8f616682dad7a60c9417..fd1e81b98f107b0a0ec11fe370dbd39d46536979 100644
--- a/GUI/coregui/Models/IntensityDataItem.h
+++ b/GUI/coregui/Models/IntensityDataItem.h
@@ -97,7 +97,7 @@ public:
 
     //! Returns data to the state defined by user (imported)
     //! data.
-    void reset(const ImportDataInfo& data) override;
+    void reset(ImportDataInfo data) override;
 
 public slots:
     void setLowerX(double xmin);
diff --git a/GUI/coregui/Models/RealDataItem.cpp b/GUI/coregui/Models/RealDataItem.cpp
index 03fcd270ac2143804df6a6b6d383b5d31c3db52f..1f28d5000456013683563b6633d38779adb51598 100644
--- a/GUI/coregui/Models/RealDataItem.cpp
+++ b/GUI/coregui/Models/RealDataItem.cpp
@@ -140,11 +140,13 @@ void RealDataItem::setImportData(ImportDataInfo data) {
     const size_t data_rank = data.dataRank();
     initDataItem(data_rank, T_INTENSITY_DATA);
     initDataItem(data_rank, T_NATIVE_DATA);
-    dataItem()->reset(data);
 
     QString units_name = data.unitsLabel();
+    auto output_data = data.intensityData();
+
+    dataItem()->reset(std::move(data));
     getItem(P_NATIVE_UNITS)->setValue(units_name);
-    item<DataItem>(T_NATIVE_DATA).setOutputData(std::move(data).intensityData().release());
+    item<DataItem>(T_NATIVE_DATA).setOutputData(output_data.release());
 }
 
 bool RealDataItem::holdsDimensionalData() const
diff --git a/GUI/coregui/Models/SpecularDataItem.cpp b/GUI/coregui/Models/SpecularDataItem.cpp
index 2f3ef2094ed2d5e81bbb684cba147163e4d4930e..f1a2f83a97dde70ced21895bb725c8af995c5875 100644
--- a/GUI/coregui/Models/SpecularDataItem.cpp
+++ b/GUI/coregui/Models/SpecularDataItem.cpp
@@ -148,7 +148,7 @@ std::vector<int> SpecularDataItem::shape() const
     return {getNbins()};
 }
 
-void SpecularDataItem::reset(const ImportDataInfo& data)
+void SpecularDataItem::reset(ImportDataInfo data)
 {
     ComboProperty combo = ComboProperty() << data.unitsLabel();
     setItemValue(SpecularDataItem::P_AXES_UNITS, combo.variant());
@@ -156,7 +156,7 @@ void SpecularDataItem::reset(const ImportDataInfo& data)
 
     setXaxisTitle(data.axisLabel(0));
     setYaxisTitle(data.axisLabel(1));
-    setOutputData(data.intensityData().release());
+    setOutputData(std::move(data).intensityData().release());
     setAxesRangeToData();
 }
 
diff --git a/GUI/coregui/Models/SpecularDataItem.h b/GUI/coregui/Models/SpecularDataItem.h
index 27216b61b6f2714285edc69484995933a295c854..ffde1fca90812700670524f5e342296b6ce07d05 100644
--- a/GUI/coregui/Models/SpecularDataItem.h
+++ b/GUI/coregui/Models/SpecularDataItem.h
@@ -75,7 +75,7 @@ public:
 
     //! Returns data to the state defined by user (imported)
     //! data.
-    void reset(const ImportDataInfo& data) override;
+    void reset(ImportDataInfo data) override;
 
 public slots:
     void setLowerX(double xmin);