diff --git a/event.c b/event.c index b9710e43f..665406574 100644 --- a/event.c +++ b/event.c @@ -423,6 +423,8 @@ void event_fire( event_t *event, array_list_t *arguments ) } is_event = is_event_old; + if( !is_event ) + job_do_notification(); } diff --git a/parser.c b/parser.c index 9f6771d05..b12c358dc 100644 --- a/parser.c +++ b/parser.c @@ -1824,9 +1824,7 @@ static void eval_job( tokenizer *tok ) } } - if(( is_subshell || is_block || !is_interactive) && (!is_event)) - job_do_notification(); -// debug( 2, L"end eval_job()\n" ); + // debug( 2, L"end eval_job()\n" ); } int eval( const wchar_t *cmd, io_data_t *io, int block_type ) diff --git a/reader.c b/reader.c index 3877ae5ac..0807cce9b 100644 --- a/reader.c +++ b/reader.c @@ -623,6 +623,7 @@ void reader_write_title() if( exec_subshell( title, &l ) != -1 ) { int i; + job_do_notification(); writestr( L"\e]2;" ); for( i=0; iprompt, &prompt_list ) == -1 ) { + job_do_notification(); /* If executing the prompt fails, make sure we at least don't print any junk */ al_foreach( &prompt_list, (void (*)(const void *))&free ); al_destroy( &prompt_list );