Index: src/libchengine/TTaskDefinition.cpp =================================================================== diff -u -N -r08717141ce5f6926116c298cbc9442094a45bb67 -redf1ada01d4339a99fa80c4da7edbb5823adde0e --- src/libchengine/TTaskDefinition.cpp (.../TTaskDefinition.cpp) (revision 08717141ce5f6926116c298cbc9442094a45bb67) +++ src/libchengine/TTaskDefinition.cpp (.../TTaskDefinition.cpp) (revision edf1ada01d4339a99fa80c4da7edbb5823adde0e) @@ -27,6 +27,7 @@ #include #include "TTaskDefinition.h" #include "../libchcore/TCoreException.h" +#include "EOperationTypesMapper.h" #define CURRENT_TASK_VERSION 1 @@ -184,11 +185,12 @@ m_pathDestinationPath.AppendSeparatorIfDoesNotExist(); // type of the operation - int iOperation = eOperation_None; - if (!rDataSrc.GetValue(_T("TaskDefinition.OperationType"), iOperation)) + TString strOperation = L"copy"; + if(!GetConfigValue(rDataSrc, _T("TaskDefinition.OperationType"), strOperation)) throw TCoreException(eErr_MissingXmlData, L"Missing TaskDefinition.OperationType", LOCATION); - m_tOperationPlan.SetOperationType((EOperationType)iOperation); + EOperationType eOperation = UnmapEnum(strOperation); + m_tOperationPlan.SetOperationType(eOperation); // and version of the task if (!GetConfigValue(rDataSrc, _T("TaskDefinition.Version"), m_ullTaskVersion)) @@ -247,8 +249,7 @@ SetConfigValue(rConfig, _T("TaskDefinition.Filters"), m_afFilters); SetConfigValue(rConfig, _T("TaskDefinition.DestinationPath"), m_pathDestinationPath); - int iOperation = m_tOperationPlan.GetOperationType(); - SetConfigValue(rConfig, _T("TaskDefinition.OperationType"), iOperation); + SetConfigValue(rConfig, _T("TaskDefinition.OperationType"), MapEnum(m_tOperationPlan.GetOperationType())); SetConfigValue(rConfig, _T("TaskDefinition.Version"), m_ullTaskVersion);