mirror of
https://github.com/owntone/owntone-server.git
synced 2025-01-26 14:13:18 -05:00
Enable and handle JPEG artwork in DAAP
This commit is contained in:
parent
c7209ab699
commit
204c9681ca
@ -2643,6 +2643,7 @@ daap_reply_extra_data(struct evhttp_request *req, struct evbuffer *evbuf, char *
|
||||
char clen[32];
|
||||
struct daap_session *s;
|
||||
const char *param;
|
||||
char *ctype;
|
||||
int id;
|
||||
int max_w;
|
||||
int max_h;
|
||||
@ -2696,20 +2697,29 @@ daap_reply_extra_data(struct evhttp_request *req, struct evbuffer *evbuf, char *
|
||||
}
|
||||
|
||||
if (strcmp(uri[2], "groups") == 0)
|
||||
ret = artwork_get_group(id, max_w, max_h, ART_CAN_PNG, evbuf);
|
||||
ret = artwork_get_group(id, max_w, max_h, ART_CAN_PNG | ART_CAN_JPEG, evbuf);
|
||||
else if (strcmp(uri[2], "items") == 0)
|
||||
ret = artwork_get_item(id, max_w, max_h, ART_CAN_PNG, evbuf);
|
||||
ret = artwork_get_item(id, max_w, max_h, ART_CAN_PNG | ART_CAN_JPEG, evbuf);
|
||||
|
||||
if (ret < 0)
|
||||
switch (ret)
|
||||
{
|
||||
if (EVBUFFER_LENGTH(evbuf) > 0)
|
||||
evbuffer_drain(evbuf, EVBUFFER_LENGTH(evbuf));
|
||||
case ART_FMT_PNG:
|
||||
ctype = "image/png";
|
||||
break;
|
||||
|
||||
goto no_artwork;
|
||||
case ART_FMT_JPEG:
|
||||
ctype = "image/jpeg";
|
||||
break;
|
||||
|
||||
default:
|
||||
if (EVBUFFER_LENGTH(evbuf) > 0)
|
||||
evbuffer_drain(evbuf, EVBUFFER_LENGTH(evbuf));
|
||||
|
||||
goto no_artwork;
|
||||
}
|
||||
|
||||
evhttp_remove_header(req->output_headers, "Content-Type");
|
||||
evhttp_add_header(req->output_headers, "Content-Type", "image/png");
|
||||
evhttp_add_header(req->output_headers, "Content-Type", ctype);
|
||||
snprintf(clen, sizeof(clen), "%ld", (long)EVBUFFER_LENGTH(evbuf));
|
||||
evhttp_add_header(req->output_headers, "Content-Length", clen);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user