.. title:: clang-tidy - android-comparison-in-temp-failure-retry

android-comparison-in-temp-failure-retry
========================================

Diagnoses comparisons that appear to be incorrectly placed in the argument to
the ``TEMP_FAILURE_RETRY`` macro. Having such a use is incorrect in the vast
majority of cases, and will often silently defeat the purpose of the
``TEMP_FAILURE_RETRY`` macro.

For context, ``TEMP_FAILURE_RETRY`` is `a convenience macro
<https://www.gnu.org/software/libc/manual/html_node/Interrupted-Primitives.html>`_
provided by both glibc and Bionic. Its purpose is to repeatedly run a syscall
until it either succeeds, or fails for reasons other than being interrupted.

Example buggy usage looks like:

.. code-block:: c

  char cs[1];
  while (TEMP_FAILURE_RETRY(read(STDIN_FILENO, cs, sizeof(cs)) != 0)) {
    // Do something with cs.
  }

Because TEMP_FAILURE_RETRY will check for whether the result *of the comparison*
is ``-1``, and retry if so.

If you encounter this, the fix is simple: lift the comparison out of the
``TEMP_FAILURE_RETRY`` argument, like so:

.. code-block:: c

  char cs[1];
  while (TEMP_FAILURE_RETRY(read(STDIN_FILENO, cs, sizeof(cs))) != 0) {
    // Do something with cs.
  }
