Commit 3ca93e4f authored by Birte Kristina Friesel's avatar Birte Kristina Friesel
Browse files

Merge branch 'giladogit-patch-1'

parents 946c837a f428edbd
Loading
Loading
Loading
Loading
+6 −6
Original line number Diff line number Diff line
@@ -87,7 +87,7 @@ int main(int argc, char **argv)
	/* main event loop */
	while (feh_main_iteration(1));

	return(0);
	return(sig_exit);
}

/* Return 0 to stop iterating, 1 if ok to continue. */
@@ -104,7 +104,7 @@ int feh_main_iteration(int block)
	double t1 = 0.0, t2 = 0.0;
	fehtimer ft;

	if (window_num == 0)
	if (window_num == 0 || sig_exit != 0)
		return(0);

	if (first) {
@@ -137,7 +137,7 @@ int feh_main_iteration(int block)
		if (ev_handler[ev.type])
			(*(ev_handler[ev.type])) (&ev);

		if (window_num == 0)
		if (window_num == 0 || sig_exit != 0)
			return(0);
	}
	XFlush(disp);
@@ -191,7 +191,7 @@ int feh_main_iteration(int block)
				   in that */
				feh_handle_timer();
			}
			else if (count && (FD_ISSET(0, &fdset)))
			else if ((count > 0) && (FD_ISSET(0, &fdset)))
				feh_event_handle_stdin();
		}
	} else {
@@ -204,11 +204,11 @@ int feh_main_iteration(int block)
					&& ((errno == ENOMEM) || (errno == EINVAL)
						|| (errno == EBADF)))
				eprintf("Connection to X display lost");
			else if (count && (FD_ISSET(0, &fdset)))
			else if ((count > 0) && (FD_ISSET(0, &fdset)))
				feh_event_handle_stdin();
		}
	}
	if (window_num == 0)
	if (window_num == 0 || sig_exit != 0)
		return(0);
	
	return(1);
+3 −1
Original line number Diff line number Diff line
@@ -28,6 +28,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#include "options.h"

void feh_handle_signal(int);
int sig_exit = 0;

void setup_signal_handlers()
{
@@ -86,7 +87,8 @@ void feh_handle_signal(int signo)
		case SIGQUIT:
			if (childpid)
				killpg(childpid, SIGINT);
			exit(128 + signo);
			sig_exit = 128 + signo;
			return;
	}

	winwid = winwidget_get_first_window_of_type(WIN_TYPE_SLIDESHOW);
+1 −1
Original line number Diff line number Diff line
@@ -27,5 +27,5 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#define SIGNALS_H

void setup_signal_handlers();

extern int sig_exit;
#endif