Django crashes when receiving a request containing a If-Modified-Since header with an incorrect date:
Traceback (most recent call last):
File "/path/lib/python3.13/site-packages/django/core/handlers/exception.py", line 55, in inner
response = get_response(request)
^^^^^^^^^^^^^^^^^^^^^
File "/path/lib/python3.13/site-packages/django/core/handlers/base.py", line 197, in _get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/path/archives/mailarchives/views.py", line 112, in __cache
resp = fn(request, *_args, **_kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/path/archives/mailarchives/views.py", line 500, in message
if ims >= newest:
^^^^^^^^^^^^^
Exception Type: TypeError at /message-id/<redacted>
Exception Value: '>=' not supported between instances of 'NoneType' and 'int'
This patch adds a condition to avoid this.
(For some reason, archives on postgresql.org do NOT crash on this. Are headers filtered before reaching pgarchives
there?When deploying upstream version of pgarchives locally, I do have this crash)
--
Célestin Matte