Skip to content
  1. Apr 06, 2023
  2. Apr 05, 2023
  3. Feb 15, 2023
  4. Jan 22, 2023
  5. Aug 22, 2022
  6. Aug 21, 2022
  7. Jun 13, 2022
  8. Jun 12, 2022
  9. Jun 10, 2022
  10. Apr 27, 2022
  11. Feb 10, 2022
  12. Feb 08, 2022
    • Christian Hesse's avatar
      global initialization for libmagic · facb67f8
      Christian Hesse authored
      Add a global `magic_t magic` and initialize it just once.
      
      Also `feh_is_image()` now calls itself to check compressed files, saving
      some duplicate code.
      facb67f8
    • Christian Hesse's avatar
      use libmagic to detect valid file formats · 4affafe9
      Christian Hesse authored
      Writing our own magic bytes detection is prone to errors and an
      everlasting catch-up-game. Let's use libmagic to get things right,
      this is less code and makes things more reliable.
      
      Building without libmagic is still possible. That will make the code
      act like specifying FEH_SKIP_MAGIC=1, effectively passing everything
      to imlib2.
      4affafe9
  13. Jan 21, 2022
  14. Jan 16, 2022
  15. Jan 03, 2022
  16. Dec 24, 2021
    • Birte Kristina Friesel's avatar
      Disable --auto-rotate in feh builds compiled wiht Imlib2 1.7.5+ · 2a9a7e25
      Birte Kristina Friesel authored
      Imlib2 v1.7.5 introduces automatic (and transparent) orientation adjustment
      based on EXIF orientation tags. This makes feh's --auto-rotate function
      both superfluous and erroneous: It doesn't know about Imlib2's adjustments,
      so it rotates an image which is already correctly oriented, leading to
      incorrect orientation.
      
      I am not aware of a simple run-time check for detecting whethen running
      Imlib2 < 1.7.5 or ≥ 1.7.5. For now, feh disables --auto-rotate entirely when
      compiled on a system with Imlib2 1.7.5+ and outputs a warning when the
      option is used.
      
      Rationale: The Imlib2 version available at run-time should in most cases be
      at least as recent as the Imlib2 version used at compile-time. So, while there
      may be cases where feh was compiled with Imlib2 1.7.4 and exhibits erroneous
      auto-rotate behaviour on an Imlib2 1.7.5 system, the inverse case
      (a feh with disabled auto-rotate support running on Imlib2 1.7.4) should be
      sufficiently rare. If it does occur, it can be remedied by compiling feh
      from source locally.
      
      Possible caveat: Imlib2 only adjusts for EXIF orientation when loading JPEG
      and TIFF images. If there are additional EXIF-aware file formats supported by
      feh, but not Imlib2, they lose auto-rotate support.
      
      Reference: GitHub issue #642
      2a9a7e25
    • Birte Kristina Friesel's avatar
      feh(1): Note that --auto-rotate is obsolete with Imlib2 v1.7.5+ · 7076b7a2
      Birte Kristina Friesel authored
      See GitHub issue #642
      7076b7a2
  17. Nov 20, 2021
  18. Nov 13, 2021
  19. Sep 25, 2021
  20. Sep 23, 2021
  21. Sep 21, 2021
  22. Sep 09, 2021
    • Birte Kristina Friesel's avatar
      feh_http_load_image: Use mkstemps to save image with correct suffix · 6c6bb8ad
      Birte Kristina Friesel authored
      This allows feh to load .gif images via libcurl, as some imlib2 versions only
      load gif images if the suffix is correct. It's also more convenient when using
      --keep-http.
      
      To achieve this, feh needs to use mkstemps. mkstemps is a non-standard
      extension that is available on several systems. Compile feh with
      "mkstemps=0" to use mkstemp instead.
      
      Closes #630
      6c6bb8ad
  23. Jul 25, 2021
  24. Jul 24, 2021