Commit Graph

59 Commits (master)

Author SHA1 Message Date
N-R-K ad95012be9
Add reuseable abstraction over fork/exec/dup2 (#211) 2022-02-20 15:54:29 +00:00
NRK 48343e99b8 code-style: prefer calloc over malloc+memset 2022-02-17 06:16:19 +00:00
NRK 9cdeeab9b8 update copyright year 2022-02-13 19:35:58 +03:00
N-R-K f7145db7f8
remove unused function and typedef (#199)
byteorder_t and size_readable is not used anywhere within the code.

byteorder_t seems to be a remain from some time sxiv handled exif data itself instead of relying on a library, introduced in 691c6d7, and probably became irrelevant when libexif was added as dependency again. And size_readable from some time it displayed the file size in the window title, introduced in bad9a70.
2022-01-02 23:13:23 +03:00
N-R-K 850bc788c3
code-style: general cleanups (#137)
* tns_clean_cache: remove unused function arg

* remove malloc casting

* improve consistency

use sizeof(T) at the end

* avoid comparing integers of different signedness

* use Window type for embed and parent

* remove unnecessary comparisons

* remove cpp style comments

* improve consistency: remove comma from the end of enumerator list

* Removed useless _IMAGE_CONFIG defines

* consistency: use the same order as snprintf

* Resolve c89 warnings


Co-authored-by: uidops <uidops@protonmail.com>
Co-authored-by: Arthur Williams <taaparthur@gmail.com>
2021-10-29 02:00:53 +06:00
eylles 5b3221cfa6
update copyright notice (#139) 2021-10-28 16:41:16 +06:00
javad bbebd45ce6 code-style: remove extra casts (#130)
Co-authored-by: N-R-K <79544946+N-R-K@users.noreply.github.com>
2021-10-24 06:41:17 +06:00
Berke Kocaoğlu 1449bfc5e9
code-style: fix consistency issues all over the codebase (#94)
* remove duplicate comment
* remove empty tabs and blank lines
* move macros and globals ontop
* comment to seprate function implementation
* fix alignment
* switch to *argv[] similar to other suckless code
* kill all empty last lines
* append comment to endif
* reuse existing ARRLEN macro
* comment fall through
* use while (true) everywhere

Co-authored-by: NRK <nrk@disroot.org>
2021-10-11 09:07:18 +06:00
Berke Kocaoğlu 7cce7ea857 Rename, Update Docs and Prepare for Release (#9)
Co-authored-by: Guilherme Rugai Freire <41879254+GRFreire@users.noreply.github.com>
Co-authored-by: N-R-K <79544946+N-R-K@users.noreply.github.com>
Co-authored-by: NRK <nrk@disroot.org>
Co-authored-by: Arthur Williams <taaparthur@gmail.com>
Co-authored-by: eylles <ed.ylles1997@gmail.com>
2021-09-16 22:55:31 +03:00
Kacper Gutowski e6c9218319 Don't skip dot files when cleaning cache 2018-07-30 10:28:35 +02:00
Bert Münnich 3c7d6f3528 Replace utf8codepoint with Chris Wellons' utf8_decode
Code under a different license should be kept in a separate file. This
implemention is a single header file with ~65 lines, so it better fits this
requirement.
2017-12-07 21:19:53 +01:00
Squibby eb96c71725 Try to match a fallback font if needed
Fixes #276

Instead of rendering the entire filename at once, Xft will let us do it
character by character. This will allow sxiv to query fontconfig for
a font that can provide any missing codepoints, if needed.

A known issue of this patch is that the "..." dots rendering will not
work properly for very long multibyte filenames. That is because we
cannot easily predict the final width of the rendered filename before
drawing it. I couldn't figure out a clean way to deal with this, so I
ended up just truncating the offending filenames.
2017-12-06 20:39:07 -03:00
Bert Münnich 148026007c One header file for type definitions and function declarations 2017-10-16 21:10:35 +02:00
Paride Legovini 86dc6860f9 Allow opening directories non-recursively 2016-09-28 19:27:48 +02:00
Bert Münnich 53a72c7b65 Fix option -q; commit d3a70a2 completely broke it; fixes issue #223 2015-12-28 17:00:21 +01:00
Bert Münnich a7d39b0ab8 Simplified r_mkdir() 2015-10-28 23:21:12 +01:00
Bert Münnich d3a70a285d Revised error handling
- Functions warn() and die() replaced by GNU-like error(3) function
- Register cleanup() with atexit(3)
- Functions called by cleanup() are marked with CLEANUP and are not allowed to
  call exit(3)
2015-10-28 23:03:37 +01:00
Bert Münnich 851e4288c1 Prefix safe allocation functions with 'e' instead of 's_' 2015-10-28 22:29:01 +01:00
Bert Münnich b096cbd536 Removed unnecessary buffer size constants 2015-10-28 22:23:28 +01:00
Bert Münnich 9a7e97cd89 Use XSI realpath(3) 2015-10-28 21:52:41 +01:00
Bert Münnich 66c3c55759 Use POSIX.1-2008 getline(3) 2015-10-28 21:50:17 +01:00
Bert Münnich e574a6d0dd Removed feature test macro definitions from source files 2015-10-28 21:37:45 +01:00
Bert Münnich e0e96977b3 Removed overcautious parameter checks 2015-10-28 21:01:24 +01:00
Markus Elfring 0f6cb93a09 Bug #165: Deletion of unnecessary null pointer checks
The function "free" performs input parameter validation.
http://pubs.opengroup.org/onlinepubs/9699919799/functions/free.html

It is therefore not needed to check a passed pointer before this function call.
A corresponding update suggestion was generated by the software "Coccinelle"
from the following semantic patch approach.
http://coccinelle.lip6.fr/

@Remove_unnecessary_pointer_checks1@
expression x;
@@
-if (x != \(0 \| NULL\))
    free(x);

@Remove_unnecessary_pointer_checks2@
expression x;
@@
-if (x != \(0 \| NULL\)) {
    free(x);
    x = \(0 \| NULL\);
-}

@Remove_unnecessary_pointer_checks3@
expression a, b;
@@
-if (a != \(0 \| NULL\) && b != \(0 \| NULL\))
+if (a)
    free(b);

@Remove_unnecessary_pointer_checks4@
expression a, b;
@@
-if (a != \(0 \| NULL\) && b != \(0 \| NULL\)) {
+if (a) {
    free(b);
    b = \(0 \| NULL\);
 }

Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
2014-08-22 19:24:08 +02:00
lucas8 3b8a79fb8b Made argument of s_strdup const 2014-08-01 20:29:06 +02:00
Bert Münnich 5cfae63620 Create thumbnail cache dir automatically 2014-06-10 23:15:04 +02:00
Bert Münnich 408b75a0b4 Ignore dotfiles for -r 2013-02-11 21:39:41 +01:00
Bert Münnich 08ae25da22 Refactored function definitions to use dangling brace 2013-02-08 22:05:31 +01:00
Bert Münnich 6d3bbc6d5e Updated/corrected license header 2013-02-08 21:52:41 +01:00
Bert Münnich d407dd65d5 Already in the year 2012 2012-02-15 19:16:24 +01:00
Bert Münnich c3c95ab218 Removed slideshow support 2012-02-11 02:34:18 +01:00
Bert Münnich 36177fb180 Updated contact information 2011-10-14 10:40:49 +02:00
Bert Münnich 4383a651c7 Strictly adhere to ANSI-C standard 2011-10-13 16:50:06 +02:00
Bert Münnich a09b20c5e6 Use void for empty argument lists 2011-10-12 18:38:29 +02:00
Bert Münnich 8dcf682de9 Made all conditionals more precise 2011-09-29 12:43:36 +02:00
Bert Münnich 22d4e991d5 Transformed function macros in util.h to inline functions 2011-09-29 10:16:13 +02:00
Bert Münnich d721d8453e Added STREQ macro 2011-09-26 21:53:52 +02:00
rck 3a81af41ac make use of EXIT_ macros 2011-09-26 15:40:07 +02:00
Bert 510512714d Added slideshow support 2011-09-10 18:41:20 +02:00
Bert 6e575b0f72 Strict conformance to IEEE Std 1003.1-2001 2011-09-08 20:54:24 +02:00
Bert 711494ad36 Avoid conflicting macros 2011-09-06 09:11:03 +02:00
Bert d585b86354 Reformated license header 2011-09-03 23:11:45 +02:00
Bert 1e84773276 Data driven timeout handling 2011-09-02 04:33:44 +02:00
Bert 8b3ae5027e Added support for gif animation 2011-08-19 15:22:16 +02:00
Bert 8763f6930f Corrected FSF address in license headers 2011-08-18 01:18:26 +02:00
Bert ff013dd009 Revised handling of file names & paths 2011-08-18 00:38:55 +02:00
Bert b8ff1677b1 Major code refactoring
- Configurable key and mouse mappings in config.h
- Put event handling code from main.c into events.[ch]
2011-07-26 18:01:29 +02:00
Bert ea23115af4 Use getline instead of readline 2011-05-29 11:45:58 +02:00
Bert a90bd1c833 Refactored recursive directory util functions 2011-04-08 10:23:42 +02:00
Bert e9996882cb Moved read_dir_rec into util.c 2011-04-07 19:15:00 +02:00