Lines 402-413
Link Here
|
402 |
|
402 |
|
403 |
MimeHeaders rmh = request.getCoyoteRequest().getMimeHeaders(); |
403 |
MimeHeaders rmh = request.getCoyoteRequest().getMimeHeaders(); |
404 |
rmh.recycle(); |
404 |
rmh.recycle(); |
|
|
405 |
boolean cachable = "GET".equalsIgnoreCase(saved.getMethod()) || |
406 |
"HEAD".equalsIgnoreCase(saved.getMethod()); |
405 |
Iterator names = saved.getHeaderNames(); |
407 |
Iterator names = saved.getHeaderNames(); |
406 |
while (names.hasNext()) { |
408 |
while (names.hasNext()) { |
407 |
String name = (String) names.next(); |
409 |
String name = (String) names.next(); |
408 |
Iterator values = saved.getHeaderValues(name); |
410 |
// The browser isn't expecting this conditional reposponse now. |
409 |
while (values.hasNext()) { |
411 |
// Assuming that it can quietly recover from an unexpected 412. |
410 |
rmh.addValue(name).setString( (String)values.next() ); |
412 |
// BZ 43687 |
|
|
413 |
if(!("If-Modified-Since".equalsIgnoreCase(name) || |
414 |
(cachable && "If-None-Match".equalsIgnoreCase(name)))) { |
415 |
Iterator values = saved.getHeaderValues(name); |
416 |
while (values.hasNext()) { |
417 |
rmh.addValue(name).setString( (String)values.next() ); |
418 |
} |
411 |
} |
419 |
} |
412 |
} |
420 |
} |
413 |
|
421 |
|