aboutsummaryrefslogtreecommitdiffstats
path: root/recipes/musicpd/mpd/save-volume-state.patch
diff options
context:
space:
mode:
Diffstat (limited to 'recipes/musicpd/mpd/save-volume-state.patch')
-rw-r--r--recipes/musicpd/mpd/save-volume-state.patch31
1 files changed, 31 insertions, 0 deletions
diff --git a/recipes/musicpd/mpd/save-volume-state.patch b/recipes/musicpd/mpd/save-volume-state.patch
new file mode 100644
index 0000000000..3e9be0eafb
--- /dev/null
+++ b/recipes/musicpd/mpd/save-volume-state.patch
@@ -0,0 +1,31 @@
+diff -Nur mpd-0.11.5~/src/playlist.c mpd-0.11.5/src/playlist.c
+--- mpd-0.11.5~/src/playlist.c 2005-08-31 17:11:14.000000000 -0700
++++ mpd-0.11.5/src/playlist.c 2005-08-31 17:14:36.000000000 -0700
+@@ -49,6 +49,7 @@
+ #define PLAYLIST_STATE_FILE_CURRENT "current: "
+ #define PLAYLIST_STATE_FILE_TIME "time: "
+ #define PLAYLIST_STATE_FILE_CROSSFADE "crossfade: "
++#define PLAYLIST_STATE_FILE_VOLUME "volume: "
+ #define PLAYLIST_STATE_FILE_PLAYLIST_BEGIN "playlist_begin"
+ #define PLAYLIST_STATE_FILE_PLAYLIST_END "playlist_end"
+
+@@ -275,6 +276,8 @@
+ myfprintf(fp,"%s\n",PLAYLIST_STATE_FILE_STATE_STOP);
+ break;
+ }
++ myfprintf(fp,"%s%i\n",PLAYLIST_STATE_FILE_VOLUME,
++ getVolumeLevel());
+ myfprintf(fp,"%s%i\n",PLAYLIST_STATE_FILE_RANDOM,
+ playlist.random);
+ myfprintf(fp,"%s%i\n",PLAYLIST_STATE_FILE_REPEAT,
+@@ -403,6 +406,10 @@
+ current = atoi(&(buffer
+ [strlen(PLAYLIST_STATE_FILE_CURRENT)]));
+ }
++ else if(strncmp(buffer,PLAYLIST_STATE_FILE_VOLUME,
++ strlen(PLAYLIST_STATE_FILE_VOLUME)) == 0) {
++ changeVolumeLevel(1, atoi(&(buffer[strlen(PLAYLIST_STATE_FILE_VOLUME)])), 0);
++ }
+ else if(strncmp(buffer,
+ PLAYLIST_STATE_FILE_PLAYLIST_BEGIN,
+ strlen(PLAYLIST_STATE_FILE_PLAYLIST_BEGIN)