summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libwaitress/src/main.c5
-rw-r--r--src/player.c2
2 files changed, 4 insertions, 3 deletions
diff --git a/libwaitress/src/main.c b/libwaitress/src/main.c
index f51d991..f9ec460 100644
--- a/libwaitress/src/main.c
+++ b/libwaitress/src/main.c
@@ -289,8 +289,9 @@ WaitressReturn_t WaitressFetchCall (WaitressHandle_t *waith) {
read (sockfd, statusBuf, sizeof (statusBuf));
switch (statusBuf[0]) {
case '2':
- if (statusBuf[1] == '0' && statusBuf[2] == '0') {
- /* 200 OK */
+ if (statusBuf[1] == '0' &&
+ (statusBuf[2] == '0' || statusBuf[2] == '6')) {
+ /* 200 OK/206 Partial Content */
} else {
CLOSE_RET (WAITRESS_RET_STATUS_UNKNOWN);
}
diff --git a/src/player.c b/src/player.c
index 3acfe58..46c3fff 100644
--- a/src/player.c
+++ b/src/player.c
@@ -446,7 +446,7 @@ void *BarPlayerThread (void *data) {
/* This loop should work around song abortions by requesting the
* missing part of the song */
do {
- snprintf (extraHeaders, sizeof (extraHeaders), "Range: %u-\r\n",
+ snprintf (extraHeaders, sizeof (extraHeaders), "Range: bytes=%u-\r\n",
player->bytesReceived);
wRet = WaitressFetchCall (&player->waith);
} while (wRet == WAITRESS_RET_PARTIAL_FILE);