diff --git a/src/tm_mad/vcenter/clone b/src/tm_mad/vcenter/clone
index c118a21683..3e4c650812 100755
--- a/src/tm_mad/vcenter/clone
+++ b/src/tm_mad/vcenter/clone
@@ -83,7 +83,7 @@ begin
     vi_client     = VCenterDriver::VIClient.new_from_host(host_id)
 
     # Find disk info
-    disk = one_vm.retrieve_xmlelements("TEMPLATE/DISK[SOURCE=\"#{src_path_escaped}\"]").first rescue nil
+    disk = one_vm.retrieve_xmlelements("TEMPLATE/DISK[SOURCE=\"#{src_path_escaped}\"]").select{|e| e['DISK_ID'] == disk_id}.first rescue nil
 
     raise "Cannot find disk element in vm template" if !disk