diff --git a/modules/img/base/src/image_handle.cc b/modules/img/base/src/image_handle.cc
index de4e5c5dfd3391a34f83c58e1866f336ed7b59fc..712868a3181ed0fa47d7989748b759abb18a5dc1 100644
--- a/modules/img/base/src/image_handle.cc
+++ b/modules/img/base/src/image_handle.cc
@@ -90,9 +90,6 @@ ImageHandle ImageHandle::Copy(bool cc) const
     copy constructor,with the cloned ImageStateBasePtr as a parameter.
     This new ptr on the heap is then in turn used to initialize the StatePtrPtr.
   */
-
-  ImageHandle copy_img = ImageHandle(StatePtrPtr(new ImageStateBasePtr(ImageStatePtr()->Clone(cc))));
-  copy_img.SetAbsoluteOrigin(ImageStatePtr()->GetAbsoluteOrigin());
   return ImageHandle(StatePtrPtr(new ImageStateBasePtr(ImageStatePtr()->Clone(cc))));
 }
 
diff --git a/modules/img/base/src/image_state/image_state_impl.cc b/modules/img/base/src/image_state/image_state_impl.cc
index 020d216511c10c955143d04f3376452102088aaf..ca8834fe87fca3199c9018644266d4b5cf6f2539 100644
--- a/modules/img/base/src/image_state/image_state_impl.cc
+++ b/modules/img/base/src/image_state/image_state_impl.cc
@@ -105,7 +105,7 @@ boost::shared_ptr<ImageStateImpl<T,D> > ImageStateImpl<T,D>::CloneState(bool cc)
   if(cc) {
     return SharedPtrType(new ImageStateImpl<T,D>(*this));
   } else {
-    return SharedPtrType(new ImageStateImpl<T,D>(domain_.GetLogicalExtent(),sampling_));
+    return SharedPtrType(new ImageStateImpl<T,D>(domain_.GetLogicalExtent(),sampling_,this->absolute_origin_));
   }
 }