Commit Graph

555 Commits

Author SHA1 Message Date
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
Bert Münnich
75a665670a Refactored rotation in key-handler 2014-08-20 11:39:56 +02:00
Bert Münnich
eaf55e9af9 Added actions for tag addition & removal to key-handler 2014-08-20 11:34:05 +02:00
Bert Münnich
3a680172c8 Unified rotate actions in key-handler; use lossless operation based on file type 2014-08-18 20:21:42 +02:00
Bert Münnich
056624548a Beautified thumbnail marks and selection border 2014-08-18 15:42:10 +02:00
Bert Münnich
fe3a1e326f Further simplified thumbnail marks 2014-08-18 12:45:32 +02:00
Bert Münnich
d0ba2c585d Simplified thumbnail selection and marks 2014-08-17 23:01:39 +02:00
Bert Münnich
4310b846c1 Increased contrast in default color set 2014-08-17 22:57:09 +02:00
Bert Münnich
1094def183 Added command to remove all image marks, bound to Ctrl-m; fixes issue #163 2014-08-17 20:27:01 +02:00
Bert Münnich
50652f63d9 Full redraw when removing files during thumbnail reloading; fixes issue #164 2014-08-17 16:31:16 +02:00
Bert Münnich
e49d38d6f9 Fixed wrong thumbnail-to-file mappings caused by file deletions 2014-08-16 22:21:51 +02:00
Bert Münnich
e267dc7793 Pass marked files to external key handler in thumbnail mode; fixes issue #135 2014-08-16 21:49:46 +02:00
Bert Münnich
284be74927 Count number of marked files 2014-08-16 21:49:46 +02:00
Bert Münnich
5b01c15176 Unified file index variable for image & thumbnail mode 2014-08-16 21:49:45 +02:00
Bert Münnich
61f61cae5f Generalized thumbnail loading, allows easier reloading of thumbnails later on 2014-08-16 21:48:52 +02:00
lucas8
3b8a79fb8b Made argument of s_strdup const 2014-08-01 20:29:06 +02:00
Bert Münnich
bb6721549b Overhauled window drawing, yet again; fixes issue #155
- Buffer for window content is bigger than the window, minimizes artifacts
  when window is resized
- Back to using XSetWindowBackgroundPixmap() instead of XCopyArea(),
  no need to handle exposure events; X server can show gray background directly
  after resize event before sxiv redraws the window contents
2014-07-28 20:36:32 +02:00
Bert Münnich
5e481912ec Revised handling of GIF animations
- New option `-a`: Play animations at startup
- Ctrl-Space toggles animation for all GIF files
- Infinite loop for all animations
2014-07-25 22:52:31 +02:00
Bert Münnich
9c92de8584 Added support for multiple commands per key/button mapping; elegant fix for issue #150 2014-07-23 23:41:23 +02:00
Bert Münnich
06164c29b7 Revised command structure and key and mouse button mappings 2014-07-23 21:50:31 +02:00
Bert Münnich
5d0679b855 Show key handler status in bar while it is running 2014-06-15 14:15:48 +02:00
Bert Münnich
5cfae63620 Create thumbnail cache dir automatically 2014-06-10 23:15:04 +02:00
Bert Münnich
cd02f2dd86 Small fix for thumbnail cropping 2014-06-10 21:28:10 +02:00
Bert Münnich
d26f39914e Use thumbnails in EXIF tags; requirement for libexif is back 2014-06-09 22:59:49 +02:00
Bert Münnich
0f7b26d33d Merge branch 'barthalion/master' 2014-05-31 11:04:39 +02:00
Bert Münnich
7a74fae56a Use integers for mouse mappings and buttons 6+7 for horizontal scrolling
Fixes issue #143
2014-05-31 10:59:19 +02:00
Bartłomiej Piotrowski
b901236261 Fix build with giflib >= 5.1.0. 2014-05-27 11:46:42 +02:00
Miroslav Koskar
4cbc7346ff Timeout initial redraw 2014-05-24 10:07:14 +02:00
Artem Bezsmertnyi
5ca20ad3e8 Add a section about key-handler to the man page. 2014-05-24 10:04:29 +02:00
Bert Münnich
1560d2b4fb Stable version 1.2 2014-04-24 20:40:26 +02:00
Bert Münnich
0b83386bff Do not center window on screen, workaround for issue #9 2014-04-21 21:29:27 +02:00
Bert Münnich
e685859a30 Use a checkerboard background for alpha layer; fixes issue #138 2014-04-06 22:47:42 +02:00
Bert Münnich
6d7acac3d1 Use real path of all files internally, requires _XOPEN_SOURCE>=500, fixes issue #137 2014-03-17 20:01:53 +01:00
Bert Münnich
653a6ee83b Warn once when external key combo is used and key-handler not installed 2014-02-18 21:10:44 +01:00
Bert Münnich
d049391916 Check for background image allocation failure 2014-02-07 22:57:58 +01:00
Bert Münnich
4fde8c8cbc Use separate background image for alpha layer; fixes issue #132 2014-02-06 22:04:19 +01:00
Bert Münnich
72f1b1ca6f Removed command line option -F 2014-02-05 09:58:36 +01:00
Bert Münnich
997c8518c5 Set scale mode at startup via argument to -s option 2014-02-04 23:05:29 +01:00
Bert Münnich
43a04c4757 Revised scale mode and zoom level handling
- Scale mode is not reset to default value upon image loading anymore
- New default key binding to change mode to scale-down
- Removed scale mode setting from config.h
- Removed -d command line option, as this is now the default at startup
2014-02-04 23:03:53 +01:00
Bert Münnich
524d9de877 Removed fit-win-to-img command 2014-02-04 22:38:24 +01:00
Bert Münnich
eb82519a80 Preserve panning when switching images; fixes issue #131 2014-02-04 21:02:02 +01:00
Bert Münnich
2e758f78c1 Check if window manager supports fullscreen; related to issue #128 2014-02-02 14:56:01 +01:00
Bert Münnich
e2fa49ecfe Unified X atom initialization 2014-02-02 14:36:10 +01:00
Bert Münnich
f6510b0a04 Merged pull request #129 2014-01-31 13:21:23 +01:00
András Mohari
2d703c30a2 Fix tabs and wording 2014-01-31 14:28:35 +01:00
András Mohari
54d7b7f20f Use a prefix key to execute the key handler
The default prefix key is C-x, and can be changed in config.def.h. The
first key pressed after the prefix key will be passed the external key
handler, unless the key is Escape, which is used to cancel the prefix.
2014-01-31 14:17:52 +01:00
Bert Münnich
d5b2d377a4 Use logo in README 2014-01-15 23:14:53 +01:00
Bert Münnich
135c4f9263 Added window icons; fixes issue #125 2014-01-15 22:40:34 +01:00
Bert Münnich
03b1d7cf7a Fixed -z option argument parsing; fixes issue #127 2014-01-15 21:53:09 +01:00
Bert Münnich
ed69b483ed Double click on thumbnail to open image 2014-01-11 22:52:37 +01:00