Max Kellermann
674d14879f
Merge branch 'v0.19.x'
2015-01-06 12:54:46 +01:00
Max Kellermann
37e9010887
input/async: reset the "open" flag after seeking successfully
...
Fixes a problem with the "curl" input plugin: IsEOF() always returns
true because the "open" flag was cleared by
CurlInputStream::RequestDone() when end-of-stream was reached. This
flag stays false even when seeking to another position has succeeded.
This patch resets the "open" flag to true after seeking successfully.
2015-01-06 12:46:28 +01:00
Max Kellermann
712ed555e6
Copyright year 2015
2015-01-01 19:48:13 +01:00
Max Kellermann
412bedb697
Merge branch 'v0.19.x'
2014-12-26 14:40:32 +01:00
Max Kellermann
9f7fd1fbfb
db/lazy, input/mms: add "override" keywords
...
Fixes -Winconsistent-missing-override (clang 3.6).
2014-12-26 14:29:29 +01:00
Max Kellermann
940cab8620
Merge branch 'v0.18.x' into v0.19.x
2014-12-26 14:28:52 +01:00
Max Kellermann
ea96919b80
Merge branch 'v0.19.x'
2014-12-23 20:43:15 +01:00
Max Kellermann
43da4c0eca
input/mms: limit the mmsx_read() size
2014-12-23 20:34:45 +01:00
Max Kellermann
fefe2df3ee
input/ffmpeg: use FfmpegInit() instead of av_register_all()
...
Make sure that the log callback is installed.
2014-12-21 20:56:42 +01:00
Max Kellermann
3f32a6b607
input/nfs: include cleanup
2014-12-14 14:21:11 +01:00
Max Kellermann
21aa1631a4
input/async: add API documentation
2014-12-14 14:21:11 +01:00
Max Kellermann
1affc641c4
input/Init: eliminate double colon from log message
2014-12-12 13:20:37 +01:00
Max Kellermann
4741d7bfe2
Merge branch 'v0.19.x'
2014-12-12 13:14:29 +01:00
Max Kellermann
fbf76c6d21
input/cdio_paranoia: use CopyString() instead of g_strlcpy()
2014-12-01 22:22:29 +01:00
Max Kellermann
737a56a030
release v0.19.5
...
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
iQIcBAABAgAGBQJUdiYnAAoJECNuiljG20USDB4P/3RGHBV5XgdInmYKjGg89hex
YRiy3BVvrBri53wkj+3YwOi05Cx0fp0pCuwQ9Nm7bmPCwfdC3ASF+UBlBBhnLdfc
dlISXDHciuKDJwiTtTlBvaKCENoZhjAJQ1SOa5zceH7j/V/XbY0FauHCeE8Ek7ht
KjimIt1ft0mdgsGNfyisdfbnh/3r4T9V9tBs/wnr7oDTYS/eUX8vCDr5qYIZipjx
W6pug2m4nfDtHYtN5gv53WYCIm7MiXo9vh7hCjJHd3T3xqKwdWVuz5RRcZcgd9yT
WWlzOKAI1cgmU7rZaV6Gu+tAq9g7MpNLOGoeN6mhH9E8V16rKqvCiLaXMK5wEGs9
JWGsTBcbTnSCdG1iivJtP2kOGVHXvNthbSunzwmbowMATi6xIBm8AoqidSzCaW1F
C7mss8VlhkHdCtHTvyK3XCE2wGEbx4OfsfsL3PWBonrs0DpNOR2AqWQYLsZUhbff
RV7aeyphMVvgLP67cT9YnGswKGEPOqP2EO9Mh51AQ7wiUESZ+O5J9YHWCc0E3SML
qs9A+lpA8fstj0QJewx/HNofiHXw5A2THjs/BVqs3vYkcHnTI94Nmdxps82r/rEA
oy9d6nQqglkPJZF3JwHqJMj1VtBIhihaHBpnLeyegjtiajZV6mVNVg9ezt9EpEA6
OjJFh2xzQJ7w5qL0gy2R
=1kbY
-----END PGP SIGNATURE-----
Merge tag 'v0.19.5'
2014-11-26 20:19:17 +01:00
Max Kellermann
a8ebfd7a92
event/DeferredMonitor: include cleanup
2014-11-25 10:44:06 +01:00
Max Kellermann
b3f5b4932c
configure.ac: add macro MPD_ENABLE_AUTO_PKG
...
Simplify the definition of many build options.
2014-11-21 22:19:57 +01:00
Max Kellermann
ff6f1655f0
input/curl: ignore ResponseBoundary() while seeking
...
While seeking, metadata must not be updated. ResponseBoundary() was
added in MPD 0.19.1, but I forgot to add the IsSeeking() check there.
This caused the "seekable" flag to reset.
2014-11-10 08:45:19 +01:00
Max Kellermann
1bd8a322f5
input/AsyncInputStream: set Error when seeking unseekable
...
Fixes crash in the "audiofile" decoder while logging the seek error.
2014-11-07 13:57:57 +01:00
Max Kellermann
362e73bea8
input/Open: expose input_domain
2014-11-07 13:57:57 +01:00
Max Kellermann
56f763a4a8
input/curl: forget Content-Length (and more) after redirect
...
Fixes playback of redirected streams.
2014-11-02 13:00:28 +01:00
Max Kellermann
a2eb14f3b3
AsyncInputStream: add method ClearTag()
2014-11-02 13:00:28 +01:00
Max Kellermann
05c63af7c4
InputStream: add method ClearMimeType()
2014-11-02 12:59:16 +01:00
Max Kellermann
1f59701c46
Merge branch 'v0.18.x' into v0.19.x
2014-11-02 12:27:46 +01:00
Max Kellermann
ec3191f502
input/curl: fix curl_easy_setopt() parameter types
2014-11-02 11:55:48 +01:00
Max Kellermann
a8770aa606
input/curl: fix curl_easy_setopt() parameter types
2014-11-01 14:09:30 +01:00
Max Kellermann
217d88f21f
TextInputStream: don't ignore unterminated last line
2014-10-28 22:10:47 +01:00
Max Kellermann
493cd866f1
TextInputStream: manually shift the buffer before reading
...
Fixes truncated lines in m3u and cue files (regression by commit
67958f7
).
2014-10-19 00:50:52 +02:00
Max Kellermann
85301853d6
ThreadInputStream: call ThreadRead() inside the thread instead of Read()
...
Fixes deadlock bug in the "mms" plugin.
2014-10-11 21:59:06 +02:00
Max Kellermann
7cd53fb452
ThreadInputStream: add assertions
2014-10-11 21:57:31 +02:00
Max Kellermann
7e12aea1d8
input/Open: use OpenLocalInputStream()
...
Make the "open" method of plugins "file" and "archive" dummy methods
that always fail. Instead, let InputStream::Open() hard-code access
to these two plugins by using OpenLocalInputStream(). This allows
simplifyin the algorithm for falling back to probing archive plugins.
2014-10-02 21:50:14 +02:00
Max Kellermann
9d2d58c4b6
input/LocalOpen: new library for opening local files
...
Combines the "file" and the "archive" input plugins.
2014-10-02 21:06:01 +02:00
Max Kellermann
0c461c3859
input/archive: export function OpenArchiveInputStream()
2014-10-02 21:00:38 +02:00
Max Kellermann
0d38bd9b3b
input/file: export function OpenFileInputStream()
2014-10-02 20:44:03 +02:00
Max Kellermann
2f02e49b9f
input/file: generate Error when errno==ENOENT
...
This special case was useless. Fixes the dreaded "Unrecognized URI"
error message when a file does not exist.
2014-10-02 20:16:05 +02:00
Max Kellermann
064e8a7c68
input/file: make the "fd" attribute "const"
2014-10-02 19:55:01 +02:00
Max Kellermann
e4dd269609
input/file: make variables more local
2014-10-02 19:18:58 +02:00
Max Kellermann
37501d9bc7
input/file: convert to class
2014-10-02 19:14:59 +02:00
Thomas Guillem
9836b1dddd
CurlInputPlugin: fix crash after second init call
...
The second time init was called, http_200_aliases pointed to a freed pointer
and leaded to a SEGFAULT.
2014-09-16 18:25:25 +02:00
Max Kellermann
60589fc1cb
input/nfs: auto-reconnect if failed while paused
2014-09-02 21:27:07 +02:00
Max Kellermann
5121316036
input/async: add method IsPaused()
2014-09-02 20:02:56 +02:00
Max Kellermann
ba8e3f11e2
input/nfs: notify client on error
...
Fixes hanging NFS client.
2014-08-31 18:26:32 +02:00
Max Kellermann
b373c53ce4
*: add missing Compiler.h includes
...
Necessary for "final" on gcc 4.6.
2014-08-30 00:46:52 +02:00
Max Kellermann
bb472206de
InputStream: move typedef offset_type to Offset.hxx
...
Reduce header dependencies.
2014-08-19 22:29:52 +02:00
Max Kellermann
d87cf5146e
InputStream: CheapSeeking() returns false only for HTTP
...
Seeking on NFS or SMB is cheap. Actually, only HTTP streams are
expensive to seek. This enables a few features on NFS/SMB files, for
example Ogg tags.
2014-08-19 21:39:12 +02:00
Max Kellermann
87eb5cbced
InputStream: move code to ExpensiveSeeking()
2014-08-19 21:38:18 +02:00
Max Kellermann
181edf4b53
InputStream: make offset_type unsigned
2014-08-19 21:23:03 +02:00
Max Kellermann
dfa53cb88e
InputPlugin: remove typedef offset_type
...
Has been moved to class InputStream long ago.
2014-08-19 21:22:23 +02:00
Max Kellermann
d079cda174
InputStream: allow GetSize() only if KnownSize()
2014-08-19 21:02:00 +02:00
Max Kellermann
4265e71d6f
InputStream: add constant UNKNOWN_SIZE
2014-08-19 21:00:50 +02:00