diff --git a/qt/widgets/instrumentview/src/InstrumentActor.cpp b/qt/widgets/instrumentview/src/InstrumentActor.cpp index 511b404e2b1c..803ac075923c 100644 --- a/qt/widgets/instrumentview/src/InstrumentActor.cpp +++ b/qt/widgets/instrumentview/src/InstrumentActor.cpp @@ -327,8 +327,11 @@ void InstrumentActor::applyMaskWorkspace() { } // Mask bins - m_maskBinsData.mask(m_workspace); - + try { + m_maskBinsData.mask(m_workspace); + } catch (std::logic_error &) { + m_messageHandler.giveUserWarning("An error occurred when applying the mask to bins.", "Mantid - Warning"); + } clearMasks(); } diff --git a/qt/widgets/instrumentview/src/MaskBinsData.cpp b/qt/widgets/instrumentview/src/MaskBinsData.cpp index ef6955c61e6f..7524dfaf524b 100644 --- a/qt/widgets/instrumentview/src/MaskBinsData.cpp +++ b/qt/widgets/instrumentview/src/MaskBinsData.cpp @@ -33,7 +33,7 @@ void MaskBinsData::mask(std::shared_ptr &workspace [](const size_t spec) -> int { return static_cast(spec); }); auto alg = Mantid::API::AlgorithmManager::Instance().create("MaskBins", -1); alg->setProperty("InputWorkspace", workspace); - alg->setProperty("OutputWorkspace", workspace); + alg->setPropertyValue("OutputWorkspace", workspace->getName()); alg->setProperty("InputWorkspaceIndexSet", spectraList); alg->setProperty("XMin", mask.start); alg->setProperty("XMax", mask.end);