add volatile qualifiers to some shared mem buffer stuff, to enusre compiler
doesn't optimize out order sensitive stuff git-svn-id: https://svn.musicpd.org/mpd/trunk@698 09075e82-0dd4-0310-85a5-a0d7c8717e4f
This commit is contained in:
parent
ae33b348af
commit
26f72edc46
|
@ -52,7 +52,7 @@
|
|||
#include <unistd.h>
|
||||
#include <string.h>
|
||||
|
||||
int * decode_pid = NULL;
|
||||
int volatile * decode_pid = NULL;
|
||||
|
||||
void decodeSigHandler(int sig) {
|
||||
if(sig==SIGCHLD) {
|
||||
|
|
22
src/player.h
22
src/player.h
|
@ -52,11 +52,11 @@
|
|||
|
||||
typedef struct _PlayerControl {
|
||||
mpd_sint8 decodeType;
|
||||
mpd_sint8 stop;
|
||||
mpd_sint8 play;
|
||||
mpd_sint8 pause;
|
||||
mpd_sint8 state;
|
||||
mpd_sint8 closeAudio;
|
||||
mpd_sint8 volatile stop;
|
||||
mpd_sint8 volatile play;
|
||||
mpd_sint8 volatile pause;
|
||||
mpd_sint8 volatile state;
|
||||
mpd_sint8 volatile closeAudio;
|
||||
mpd_sint8 error;
|
||||
mpd_uint16 bitRate;
|
||||
mpd_sint8 bits;
|
||||
|
@ -67,16 +67,16 @@ typedef struct _PlayerControl {
|
|||
float elapsedTime;
|
||||
char file[MAXPATHLEN+1];
|
||||
char erroredFile[MAXPATHLEN+1];
|
||||
mpd_sint8 queueState;
|
||||
mpd_sint8 queueLockState;
|
||||
mpd_sint8 lockQueue;
|
||||
mpd_sint8 unlockQueue;
|
||||
mpd_sint8 seek;
|
||||
mpd_sint8 volatile queueState;
|
||||
mpd_sint8 volatile queueLockState;
|
||||
mpd_sint8 volatile lockQueue;
|
||||
mpd_sint8 volatile unlockQueue;
|
||||
mpd_sint8 volatile seek;
|
||||
double seekWhere;
|
||||
float crossFade;
|
||||
mpd_uint16 softwareVolume;
|
||||
double totalPlayTime;
|
||||
int decode_pid;
|
||||
int volatile decode_pid;
|
||||
} PlayerControl;
|
||||
|
||||
void player_sigChldHandler(int pid, int status);
|
||||
|
|
|
@ -33,14 +33,14 @@ extern int buffered_before_play;
|
|||
extern int buffered_chunks;
|
||||
|
||||
typedef struct _Buffer {
|
||||
char * chunks;
|
||||
mpd_uint16 * chunkSize;
|
||||
mpd_uint16 * bitRate;
|
||||
float * times;
|
||||
mpd_sint16 begin;
|
||||
mpd_sint16 end;
|
||||
mpd_sint16 next;
|
||||
mpd_sint8 wrap;
|
||||
char * volatile chunks;
|
||||
mpd_uint16 * volatile chunkSize;
|
||||
mpd_uint16 * volatile bitRate;
|
||||
float * volatile times;
|
||||
mpd_sint16 volatile begin;
|
||||
mpd_sint16 volatile end;
|
||||
mpd_sint16 volatile next;
|
||||
mpd_sint8 volatile wrap;
|
||||
float totalTime;
|
||||
} Buffer;
|
||||
|
||||
|
|
Loading…
Reference in New Issue