Skip to content
Snippets Groups Projects
  1. Jan 09, 2021
  2. Dec 05, 2020
    • Birte Kristina Friesel's avatar
      free accompanying EXIF data when freeing an image · d473ac13
      Birte Kristina Friesel authored
      This fixes two memory bugs that only manifest with exif=1 and long-running
      slideshows.
      
      * when feh loads an image, it writes exif data to file->ed. Previously, this
        data was never free'd, causing a memory leak on subsequent loads of the same
        file.
      * As file->ed is never free'd, the accumulated EXIF data consumes a significant
        amount of memory over time. with slideshow-delay = 10 and two days of
        runtime, feh may exceed 1 GB of memory usage. If the slideshow is so large
        that feh does not encounter the same image twice in this time, this is not
        detected as a memory leak, as each EXIF data chunk is referenced from the
        filelist.
      
      See <https://github.com/derf/feh/issues/553> for details.
      
      Closes #553
      d473ac13
  3. Aug 28, 2020
  4. Jun 16, 2020
  5. Apr 11, 2020
  6. Mar 30, 2020
  7. Apr 05, 2019
  8. Nov 18, 2018
  9. Oct 17, 2018
    • Birte Kristina Friesel's avatar
      Use random() instead of rand() to increase portability · 9803fc41
      Birte Kristina Friesel authored
      Quoting glibc rand(3):
      
      The  versions  of rand() and srand() in the Linux C Library use the same random
      number generator as random(3) and srandom(3), so the lower-order bits should be
      as  random  as  the  higher-order bits.   However,  on  older  rand()
      implementations, and on current implementations on different systems, the
      lower-order bits are much less random than the higher-order bits.  Do not use
      this function in applications intended to be portable when good randomness is
      needed.  (Use random(3) instead.)
      9803fc41
  10. Oct 02, 2018
  11. Aug 29, 2018
  12. Aug 24, 2018
  13. Aug 18, 2018
  14. May 11, 2018
  15. Apr 04, 2018
  16. Mar 10, 2018
  17. Feb 25, 2018
  18. Feb 14, 2018
  19. Jan 24, 2018
  20. Jan 19, 2018
    • ulteq's avatar
      Removes unnecessary code · c8a4e7da
      ulteq authored
      Halves the start-up time of the slideshow if the title contains data from 'file->info'
      c8a4e7da
  21. Jan 14, 2018
  22. Jan 02, 2018
  23. Oct 03, 2017
  24. Feb 23, 2017
  25. Jan 12, 2017
  26. Jan 11, 2017
  27. Aug 21, 2016
  28. Jun 06, 2016
  29. May 28, 2016
    • guns's avatar
      Add prev_dir and next_dir navigation actions · 36b09fa0
      guns authored
      Many image collections are organized by directory, so it is nice to have
      jump-to-adjacent-directory navigation.
      
      e.g. Given the following file hierarchy:
      
          .
          ├── A
          │   ├── 1.jpg
          │   ├── 2.jpg
          │   └── C
          │       ├── 1.jpg
          │       ├── 2.jpg
          │       └── 3.jpg
          └── B
              ├── 1.jpg
              ├── 2.jpg
              └── 3.jpg
      
      `feh --recursive` creates the following filelist:
      
          A/1.jpg <---- current_file
          A/2.jpg
          A/C/1.jpg
          A/C/2.jpg
          A/C/3.jpg
          B/1.jpg
          B/2.jpg
          B/3.jpg
      
      If we press [next_dir], we move the current_file pointer to:
      
          A/1.jpg
          A/2.jpg
          A/C/1.jpg <-- current_file
          A/C/2.jpg
          A/C/3.jpg
          B/1.jpg
          B/2.jpg
          B/3.jpg
      
      Pressing [next_dir] again moves the pointer to:
      
          A/1.jpg
          A/2.jpg
          A/C/1.jpg
          A/C/2.jpg
          A/C/3.jpg
          B/1.jpg <---- current_file
          B/2.jpg
          B/3.jpg
      
      [next_dir] now moves the pointer back to the top of the list:
      
          A/1.jpg <---- current_file
          A/2.jpg
          A/C/1.jpg
          A/C/2.jpg
          A/C/3.jpg
          B/1.jpg
          B/2.jpg
          B/3.jpg
      
      Pressing [prev_dir] from here moves backwards to the first image of the
      previous directory:
      
          A/1.jpg
          A/2.jpg
          A/C/1.jpg
          A/C/2.jpg
          A/C/3.jpg
          B/1.jpg <---- current_file
          B/2.jpg
          B/3.jpg
      
      When starting from an position that is not the first image of a
      directory, [prev_dir] moves the pointer to the first image of the
      current directory.
      
      These actions combine well with `--sort dirname` since all regular files
      in a directory will be sorted before any subdirectories, avoiding a
      filelist like the following:
      
          A/1.jpg
          A/SUBDIR/2.jpg
          A/SUBDIR/3.jpg
          A/4.jpg
      
      With `--sort dirname` that filelist becomes:
      
          A/1.jpg
          A/4.jpg
          A/SUBDIR/2.jpg
          A/SUBDIR/3.jpg
      36b09fa0
  30. Apr 07, 2015
  31. Mar 07, 2015
  32. Aug 03, 2014
  33. May 11, 2014
  34. May 06, 2014
  35. Apr 10, 2014
Loading