From cba684a9ee73f7dd2a4ffadbfe957dce36c13078 Mon Sep 17 00:00:00 2001 From: Andreas Nicolai Date: Tue, 31 Dec 2024 13:45:10 +0100 Subject: [PATCH] Fixed invalid Unit assignment operator/copy constructor --- externals/IBK/src/IBK_Unit.cpp | 20 -------------------- externals/IBK/src/IBK_Unit.h | 5 ++--- 2 files changed, 2 insertions(+), 23 deletions(-) diff --git a/externals/IBK/src/IBK_Unit.cpp b/externals/IBK/src/IBK_Unit.cpp index 11584454..7c147d0f 100644 --- a/externals/IBK/src/IBK_Unit.cpp +++ b/externals/IBK/src/IBK_Unit.cpp @@ -38,13 +38,11 @@ #include "IBK_configuration.h" -#include #include #include "IBK_Unit.h" #include "IBK_UnitData.h" #include "IBK_UnitList.h" -#include "IBK_StringUtils.h" #include "IBK_Exception.h" #include "IBK_FormatString.h" @@ -59,24 +57,6 @@ Unit::Unit(const std::string& name) { #endif // IBK_ENABLE_UNIT_NAME } -Unit::Unit(const Unit & src) { - if (src.m_id>=UnitList::instance().size()) - throw IBK::Exception( FormatString("Unit index %1 out of range 0..%2.") - .arg(src.m_id).arg((int)UnitList::instance().size()-1),"[Unit::Unit]"); - m_id=src.m_id; -#ifdef IBK_ENABLE_UNIT_NAME - m_name = src.m_name; -#endif // IBK_ENABLE_UNIT_NAME -} - -Unit &Unit::operator=(Unit src) { - std::swap(src.m_id, m_id); -#ifdef IBK_ENABLE_UNIT_NAME - m_name.swap(src.m_name); -#endif // IBK_ENABLE_UNIT_NAME - return *this; -} - Unit::Unit(unsigned int unitid) { if (unitid>=UnitList::instance().size()) throw IBK::Exception( FormatString("Unit index %1 out of range 0..%2.") diff --git a/externals/IBK/src/IBK_Unit.h b/externals/IBK/src/IBK_Unit.h index 951c6f7f..abbc2a1b 100644 --- a/externals/IBK/src/IBK_Unit.h +++ b/externals/IBK/src/IBK_Unit.h @@ -59,9 +59,8 @@ class Unit { /*! Default constructor (creates an undefined unit). */ Unit() : m_id(0) {} - Unit(const Unit & src); - - Unit& operator=(Unit src); + Unit(const Unit & src) = default; + Unit& operator=(const Unit & src) = default; /*! Constructor (creates a unit with the id number 'unitid'). This function throws an out_of_range exception if the 'unitid' is invalid.