diff --git a/src/image/Image.cc b/src/image/Image.cc index 24923e236b..a99aa53f8c 100644 --- a/src/image/Image.cc +++ b/src/image/Image.cc @@ -575,6 +575,8 @@ void Image::disk_attribute(VirtualMachineDisk * disk, // Force FORMAT and DRIVER from image if (!format.empty()) { + one_util::tolower(format); + disk->replace("DRIVER", format); disk->replace("FORMAT", format); } @@ -583,6 +585,7 @@ void Image::disk_attribute(VirtualMachineDisk * disk, disk->remove("DRIVER"); disk->remove("FORMAT"); } + disk->replace("IMAGE_STATE", state); //-------------------------------------------------------------------------- @@ -613,9 +616,8 @@ void Image::disk_attribute(VirtualMachineDisk * disk, disk->replace("PERSISTENT", "YES"); disk->replace("CLONE", "NO"); disk->replace("SAVE", "YES"); - - if (template_ptype == "SHAREABLE" && - one_util::tolower(format) == "raw") + + if (template_ptype == "SHAREABLE" && format == "raw") { disk->replace("SHAREABLE", "YES"); } diff --git a/src/tm/TransferManager.cc b/src/tm/TransferManager.cc index 082a54d695..6587b1628e 100644 --- a/src/tm/TransferManager.cc +++ b/src/tm/TransferManager.cc @@ -118,15 +118,10 @@ int TransferManager::prolog_transfer_command( size = disk->vector_value("SIZE"); format = disk->vector_value("FORMAT"); - if (format.empty()) + if ( size.empty() || format.empty() ) { - format = "raw"; - } - - if ( size.empty() ) - { - os << "No size in FS"; - vm->log("TrM", Log::WARNING, "No size in FS, skipping"); + os << "No size or format in FS"; + vm->log("TrM", Log::WARNING, "No size or format in FS, skipping"); return 0; }