mirror of
https://github.com/paxed/dgamelaunch.git
synced 2025-07-31 01:24:43 +02:00
Add some missing signal blocking, perhaps this will fix the jammed shared memory block in watching menu.
This commit is contained in:
parent
934c992319
commit
7a565e5e14
@ -672,6 +672,7 @@ shm_update(struct dg_shm *shm_dg_data, struct dg_game **games, int len)
|
||||
int di, i;
|
||||
struct dg_shm_game *shm_dg_game = (struct dg_shm_game *)(shm_dg_data + sizeof(struct dg_shm));
|
||||
|
||||
signals_block();
|
||||
shm_sem_wait(shm_dg_data);
|
||||
|
||||
for (di = 0; di < shm_dg_data->max_n_games; di++)
|
||||
@ -710,6 +711,7 @@ shm_update(struct dg_shm *shm_dg_data, struct dg_game **games, int len)
|
||||
}
|
||||
|
||||
shm_sem_post(shm_dg_data);
|
||||
signals_release();
|
||||
#endif
|
||||
}
|
||||
|
||||
@ -1073,6 +1075,7 @@ inprogressmenu (int gameid)
|
||||
}
|
||||
}
|
||||
|
||||
signals_block();
|
||||
shm_sem_wait(shm_dg_data);
|
||||
|
||||
(void) time(&ctime);
|
||||
@ -1106,6 +1109,7 @@ inprogressmenu (int gameid)
|
||||
}
|
||||
|
||||
shm_sem_post(shm_dg_data);
|
||||
signals_release();
|
||||
|
||||
btm = dgl_local_LINES-btm_banner_hei-top_banner_hei;
|
||||
if (len <= max_height)
|
||||
@ -1345,6 +1349,7 @@ inprogressdisplay (int gameid)
|
||||
shm_update(shm_dg_data, games, len);
|
||||
games = sort_games (games, len, sortmode);
|
||||
|
||||
signals_block();
|
||||
shm_sem_wait(shm_dg_data);
|
||||
|
||||
(void) time(&ctime);
|
||||
@ -1369,6 +1374,7 @@ inprogressdisplay (int gameid)
|
||||
}
|
||||
|
||||
shm_sem_post(shm_dg_data);
|
||||
signals_release();
|
||||
|
||||
free_populated_games(games, len);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user