[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#65224: mailcap-viewer-passes-test’s caching interferes with precompu
From: |
Stefan Kangas |
Subject: |
bug#65224: mailcap-viewer-passes-test’s caching interferes with precomputed tests |
Date: |
Fri, 8 Sep 2023 10:20:52 -0700 |
Version: 30.1
Felix Dietrich <felix.dietrich@sperrhaken.name> writes:
> When called with a VIEWER-INFO that does not contain a test,
> ‘mailcap-viewer-passes-test’ erroneously returns nil if it had
> previously been called with a VIEWER-INFO whose test was explicitly set
> to nil. As a consequence ‘mailcap-mime-info’ (used e.g. by
> ‘gnus-mime-view-part-externally’) may return the wrong viewer.
>
> The reason is that ‘mailcap-viewer-passes-test’ adds tests that are
> explicitly nil (i.e. (test . nil)) to the cache as (nil nil) (first the
> test, second the result) and checks for the non-existence of a test only
> after it has tried to find the test result in the cache. The test
> variable for a VIEWER-INFO without a test is nil, and, therefore, the
> assoc lookup for nil done on the cache yields (nil nil) and, hence, nil
> (the cadr) as the test result.
>
> Moving the check for the non-existence of a test before the cache lookup
> fixes the issue; this is what the attached patch does. In the log
> message the bug number (Bug#) needs to be filled in.
LGTM, pushed to master as commit 6d8458571f7.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- bug#65224: mailcap-viewer-passes-test’s caching interferes with precomputed tests,
Stefan Kangas <=