aboutsummaryrefslogtreecommitdiffstats
path: root/scd/app.c
diff options
context:
space:
mode:
Diffstat (limited to 'scd/app.c')
-rw-r--r--scd/app.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/scd/app.c b/scd/app.c
index da70f8705..aac9d304d 100644
--- a/scd/app.c
+++ b/scd/app.c
@@ -1937,6 +1937,7 @@ scd_update_reader_status_file (void)
{
card_t card, card_next;
int periodical_check_needed = 0;
+ int reported = 0;
npth_mutex_lock (&card_list_lock);
for (card = card_top; card; card = card_next)
@@ -1971,6 +1972,7 @@ scd_update_reader_status_file (void)
{
report_change (card->slot, card->card_status, status);
send_client_notifications (card, status == 0);
+ reported++;
if (status == 0)
{
@@ -1995,6 +1997,9 @@ scd_update_reader_status_file (void)
}
}
+ if (reported)
+ npth_cond_broadcast (&notify_cond);
+
npth_mutex_unlock (&card_list_lock);
return periodical_check_needed;
@@ -2292,12 +2297,6 @@ app_do_with_keygrip (ctrl_t ctrl, int action, const char *keygrip_str,
return c;
}
-void
-app_notify (void)
-{
- npth_cond_broadcast (&notify_cond);
-}
-
int
app_wait (void)
{