diff --git a/swift/proxy/server.py b/swift/proxy/server.py index ca7543cc8f..ac9beafa52 100644 --- a/swift/proxy/server.py +++ b/swift/proxy/server.py @@ -629,7 +629,7 @@ class ObjectController(Controller): return HTTPPreconditionFailed(request=req, body='X-Copy-From header must be of the form' '/') - source_req = Request.blank(source_header) + source_req = Request.blank(source_header, environ=req.environ) orig_obj_name = self.object_name orig_container_name = self.container_name self.object_name = src_obj_name diff --git a/test/functionalnosetests/test_object.py b/test/functionalnosetests/test_object.py index 92f54ea97e..0ceaee8fc1 100644 --- a/test/functionalnosetests/test_object.py +++ b/test/functionalnosetests/test_object.py @@ -120,7 +120,7 @@ class TestObject(unittest.TestCase): 'X-Copy-From': '%s/%s' % (self.container, self.obj)}) return check_response(conn) - resp = retry(put, use_account=3) + resp = retry(copy, use_account=3) resp.read() self.assertEquals(resp.status, 403) # verify third account can write "obj1" to shared container @@ -141,7 +141,7 @@ class TestObject(unittest.TestCase): 'X-Copy-From': '%s/%s' % (self.container, self.obj)}) return check_response(conn) - resp = retry(put, use_account=3) + resp = retry(copy, use_account=3) resp.read() self.assertEquals(resp.status, 403) # clean up "obj1"