@@ -135,6 +135,10 @@ def wrapper(*args, **kwargs):
135
135
136
136
store = storage .load ()
137
137
138
+ headers = source_resp .headers
139
+ if 'Content-Encoding' in headers :
140
+ del headers ['Content-Encoding' ]
141
+
138
142
if not stream :
139
143
logger .debug ('JSON data found on source, writing response' )
140
144
resp_data = source_resp .content
@@ -145,19 +149,20 @@ def wrapper(*args, **kwargs):
145
149
)
146
150
return toolkit .response (
147
151
data = resp_data ,
148
- headers = source_resp . headers ,
152
+ headers = headers ,
149
153
raw = True
150
154
)
151
155
logger .debug ('Layer data found on source, preparing to '
152
156
'stream response...' )
153
157
layer_path = store .image_layer_path (kwargs ['image_id' ])
154
- return _handle_mirrored_layer (source_resp , layer_path , store )
158
+ return _handle_mirrored_layer (source_resp , layer_path , store ,
159
+ headers )
155
160
156
161
return wrapper
157
162
return decorator
158
163
159
164
160
- def _handle_mirrored_layer (source_resp , layer_path , store ):
165
+ def _handle_mirrored_layer (source_resp , layer_path , store , headers ):
161
166
sr = toolkit .SocketReader (source_resp )
162
167
tmp , hndlr = storage .temp_store_handler ()
163
168
sr .add_handler (hndlr )
@@ -169,7 +174,7 @@ def generate():
169
174
tmp .seek (0 )
170
175
store .stream_write (layer_path , tmp )
171
176
tmp .close ()
172
- return flask .Response (generate (), headers = source_resp . headers )
177
+ return flask .Response (generate (), headers = headers )
173
178
174
179
175
180
def store_mirrored_data (data , endpoint , args , store ):
0 commit comments