summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorLines
2022-01-03Trim trailing whitespacea1346054-32/+31
2021-12-24Disable --auto-rotate in feh builds compiled wiht Imlib2 1.7.5+Daniel Friesel-1/+10
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
2021-12-24feh(1): Note that --auto-rotate is obsolete with Imlib2 v1.7.5+Daniel Friesel-2/+16
See GitHub issue #642
2021-11-20--window-id: support hexadecimal IDsDaniel Friesel-1/+1
Closes #639
2021-11-13Add bindable button "0" for mouse movementDaniel Friesel-0/+18
Useful to make feh quit (or execute actions) on mouse movement Closes #568
2021-09-25make install: Add missing dependenciesDaniel Friesel-4/+4
2021-09-25Release v3.7.2Daniel Friesel-0/+6
2021-09-23feh(1): Add known bug related to imlib2 < 1.7.4Daniel Friesel-0/+7
2021-09-21Fix crash when X11 is connected via FD 0.Daniel Friesel-3/+9
If stdin is not connected, the X11 connection may use FD 0, which is traditionally used for STDIN. Do not attempt reads from fd 0 unless it _really_ is connected to a terminal on stdin. Reported by https://github.com/pvanstam, thanks a lot! Closes #631 Closes #632
2021-09-21Do not hardcode STDIN_FILENO == 0Daniel Friesel-2/+2
2021-09-09feh_http_load_image: Use mkstemps to save image with correct suffixDaniel Friesel-4/+31
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
2021-07-25Set correct window size when applying --zoom outside of -. / -FDaniel Friesel-3/+18
Needs further testing
2021-07-24Release v3.7.13.7.1Daniel Friesel-0/+7
2021-07-24Fix implicit definition of `strverscmp`.Olof-Joachim Frahm (欧雅福)-8/+4
2021-07-23Fix memory leak on error pathTobias Stoeckmann-1/+1
The snprintf string argument should not be duplicated. It is not needed and also not released afterwards.
2021-07-23Fix out of boundary access on illegal argumentTobias Stoeckmann-1/+1
Calling feh with an empty argument leads to out of boundary access. This can be seen best when compiled with asan: $ feh ""
2021-07-23feh_draw_exif: Fix out of bounds array access when handling long linesDaniel Friesel-4/+3
2021-07-23Fix out of boundary access with exif (#617)Tobias Stoeckmann-15/+15
* Fix out of boundary access The while-loop is not finished when pos is set to EXIF_MAX_DATA. Instead, the loop continues and therefore tries to access data outside of the array. This is triggered when compiled with exif=1 and asan: $ feh --draw-exif image.jpg * Fixed formatting No functional change but makes previous commit easier verifiable (independent of tab space setup). * Call break; instead of setting pos2 to a magic value This is in line with the following else clause * Another cosmetic adjustment Co-authored-by: Daniel Friesel <derf@finalrewind.org>
2021-06-21Merge pull request #615 from DavidBuchanan314/masterDaniel Friesel-2/+12
Fix feh_is_image for tiny (<16 byte) image files
2021-06-21Fix feh_is_image for tiny filesDavid Buchanan-1/+3
2021-06-21Add test case for tiny PBM fileDavid Buchanan-1/+9
2021-06-09Add JPEG XL to supported file formatsAlistair-0/+5
Note that Imlib2 does not support JXL images out of the box. However, the imlib2-jxl loader (https://github.com/alistair7/imlib2-jxl) does.
2021-05-09Release v3.73.7Daniel Friesel-3/+7
2021-05-09Merge branch 'simplify-exif'Daniel Friesel-98/+179
2021-05-08rename --zoom-rate to --zoom-step and switch to percentDaniel Friesel-10/+10
This is consistent with --scroll-step (option name) and --zoom (percentage)
2021-05-08getopt.c: Add missing string.h include (#530)Daniel Friesel-0/+1
2021-05-02feh(1): Xinerama: Refer to monitors, not screensDaniel Friesel-13/+13
"screen" and "display" are different X11 terms; we're actually talking about "monitors"
2021-05-02feh(1): Add "xrandr --listmonitor" reference to Xinerama sectionsDaniel Friesel-0/+10
This should help answer questions such as #605 in the future
2021-04-10EXIF: Use rawtherapee / flickr style output instead of "key: value" listsimplify-exifDaniel Friesel-98/+179
2021-04-10src/exif*: follow feh indentationDaniel Friesel-685/+729
2021-04-04feh(1): note that "yudit/12" is the default fontDaniel Friesel-2/+3
2021-03-10Add support for gopher and gophers in utils/path_is_url.parazyd-0/+2
Both of these protocols are supported in latest curl. Signed-off-by: parazyd <parazyd@dyne.org>
2021-03-06Prepare changelog for feh v3.7Daniel Friesel-0/+10
2021-03-06help.raw: Add --window-id argumentDaniel Friesel-1/+1
2021-03-05Set original_file_items when using --start-at without file argumentsDaniel Friesel-0/+1
This makes --(auto-)reload use the directory specified at --start-at instead of the current working directory. Closes #597
2021-03-03Option Refactor and addition of Zoom Rate (#589)Alec C-204/+332
* fixed for simpler parenthesis matching * absolute file path for .fehbg, moved script creation into helper function * Removed unused variable. * added early exit condition as per Ferada's suggestion * Added enum for options to improve readability * migrated options to enum. * added support for zoom specification through options * added man entry for zoom-rate * added help entry for zoom-rate commands * updated man to have warnings about strange values for zoom options * fix memory leak (free exec_absolute_path) * added detection for path vs env PATH launch for use in .fehbg script gen. * Added enum for options to improve readability * migrated options to enum. * added support for zoom specification through options * added man entry for zoom-rate * added help entry for zoom-rate commands * updated man to have warnings about strange values for zoom options * Update help.raw removed zoom-in/out * removed zoom-in/out from options * updated man/help entry to remove in/out zoom specification * sanitize --zoom-rate in options parser; use a single variable for storing it Co-authored-by: Daniel Friesel <derf@finalrewind.org>
2021-03-01stdin keyboard input: Ignore uninitialized keysymsDaniel Friesel-1/+1
This fixes Ctrl+key causing unintended behaviour. Closes #596
2021-02-28Merge pull request #531 from Ferada/fix-some-warningsDaniel Friesel-8/+14
Fix some warnings from `gcc`.
2021-02-27feh_event_handle_stdin: handle EOFDaniel Friesel-1/+1
Closes #595
2021-01-28Merge pull request #588 from avlec/masterDaniel Friesel-83/+102
.fehbg now stores the full path to the feh binary when it was run using a relative path (i.e., not from $PATH)
2021-01-28added detection for path vs env PATH launch for use in .fehbg script gen.Alec Cox-4/+12
2021-01-28fix memory leak (free exec_absolute_path)Daniel Friesel-0/+1
2021-01-26added early exit condition as per Ferada's suggestionAlec Cox-72/+73
2021-01-25Removed unused variable.Alec Cox-2/+0
2021-01-25absolute file path for .fehbg, moved script creation into helper functionAlec Cox-82/+92
2021-01-25Merge 3.6.3 release from 3.6 branchDaniel Friesel-0/+7
2021-01-25Release v3.6.33.6.3release-3.6Daniel Friesel-0/+7
2021-01-25Handle URL-encoded components in "feh --start-at file://...."Daniel Friesel-3/+47
Closes #584
2021-01-25free opt.start_list_at before NULLing itDaniel Friesel-0/+3
2021-01-25wallpaper.h: Remove useless _XFUNCPROTO wrappersDaniel Friesel-2/+1
feh is C code, _XFUNCPROTO(BEGIN|END) are only needed for C++ applications.