diff options
| -rw-r--r-- | src/imlib.c | 4 | ||||
| -rw-r--r-- | test/feh.t | 6 | ||||
| -rw-r--r-- | test/tiny.pbm | 4 | 
3 files changed, 12 insertions, 2 deletions
| diff --git a/src/imlib.c b/src/imlib.c index 3a7cb6d..6f31e96 100644 --- a/src/imlib.c +++ b/src/imlib.c @@ -253,7 +253,9 @@ int feh_is_image(feh_file * file)  	if (!fh) {  		return 0;  	} -	if (fread(buf, 1, 16, fh) != 16) { +	// Files smaller than buf will be padded with zeroes +	memset(buf, 0, sizeof(buf)); +	if (fread(buf, 1, 16, fh) <= 0) {  		fclose(fh);  		return 0;  	} @@ -2,7 +2,7 @@  use strict;  use warnings;  use 5.010; -use Test::Command tests => 71; +use Test::Command tests => 73;  $ENV{HOME} = 'test'; @@ -186,3 +186,7 @@ $cmd  $cmd->exit_is_num(0);  $cmd->stdout_is_file("test/${list_dir}/default");  $cmd->stderr_is_eq(''); + +$cmd = Test::Command->new( cmd => "$feh --list test/tiny.pbm" ); +$cmd->exit_is_num(0); +$cmd->stderr_is_eq(''); diff --git a/test/tiny.pbm b/test/tiny.pbm new file mode 100644 index 0000000..3fb3e4e --- /dev/null +++ b/test/tiny.pbm @@ -0,0 +1,4 @@ +P4 +1 1 + + | 
