jvoisin
ba9d3ff539
Remove an empty statement
5 years ago
jvoisin
8ba97026a4
Synchronize on activeAudioPlayers when changing them
5 years ago
Andrew DeMaria
e7bd5da6fa
Precompile jsp
...
Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
5 years ago
tesshucom
ff08f6dd02
Fix #1139
5 years ago
Evan Harris
093f7c028d
Fix podcast download issues
...
Some podcast feeds use circular redirects (with query parameters).
Fixes #1013
Avoids HttpClient cookie handling producing "Invalid cookie" errors due to
not handling latest "expires" attribute formats.
5 years ago
Evan Harris
bf309e9117
Fixup eccb7e08f5
( #1170 )
5 years ago
jvoisin
eccb7e08f5
Fix a NULL-deref in CoverArtController.java
...
ImageIO.read() can return null in certain cases
5 years ago
jvoisin
3b8993e860
Replace Hashtable with HashMap, since Hashtable are deprecated
5 years ago
Evan Harris
50b3fd382c
Handle null without exception
5 years ago
François-Xavier Thomas
073b7e35e1
Add simple test cases for internet radios
5 years ago
François-Xavier Thomas
86510a4d42
Use the clear action to stop the internet radio
5 years ago
François-Xavier Thomas
19082afc11
Mark cached internet radio sources as a final variable
5 years ago
François-Xavier Thomas
53b174a8f4
Follow HTTP redirects when loading internet radio playlists
5 years ago
François-Xavier Thomas
760a6e957a
Limit the amount of data we parse from remote internet radio playlists
5 years ago
François-Xavier Thomas
b1185601d5
Tweak logging for internet radio playlists
5 years ago
François-Xavier Thomas
aeabfa1044
Add internet radio source cache
...
This helps us avoid loading and parsing the external playlists each time
we try to load an internet radio.
5 years ago
François-Xavier Thomas
cab3f60a25
Refactor internet radio loading into a service
5 years ago
François-Xavier Thomas
02d373d9ec
Play internet radios in MediaElement ( fix #408 )
...
This allows the user to control playback for the internet radios, which
were previously started outside of the main player without any
possibility for direct control.
5 years ago
Evan Harris
59db5073e3
Added webm to default video file types
5 years ago
tesshucom
767b39ed5b
Split SearchService
...
Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
5 years ago
Andrew DeMaria
42bced139f
Small refactor on httpservletrequest injection
5 years ago
Evan Harris
983d688cce
Added validation to reject things disallowed on the current user
5 years ago
Evan Harris
a4c62f6860
Disallow deleting your own user or removing admin role
5 years ago
Evan Harris
79b800656a
Cleanup siebling -> sibling mis-spellings
5 years ago
jvoisin
1640411573
Fix some invalid/incomplete javadoc comments
5 years ago
jvoisin
4fbc080098
Please the linter
6 years ago
jvoisin
70bc0f6c04
Remove the ghetto REST flash-based video player
6 years ago
jvoisin
1f1a22fca5
Remove the deprecated getAlphabetialAlbums method
6 years ago
jvoisin
643be3930f
Remove superfluous casts
6 years ago
jvoisin
3202a1086d
Minor simplification
...
`.sorted(Comparator.reverseOrder()).findFirst()`
can be replaced with `max(Comparator.naturalOrder()`
6 years ago
jvoisin
def5f854fb
Inline some variables
...
There is no point in `Type a = …; return a;`
6 years ago
jvoisin
57df709cd8
Replace things like size == 0 with isEmpty
6 years ago
jvoisin
977b656bc6
Remove superfluous escape in two regexp
6 years ago
jvoisin
828c1b2674
Use modern Spring mapping annotations
...
Java is verbose enough, no need to make it worse.
6 years ago
jvoisin
3492fc0c05
Fix a crash when transcoding a track without album
6 years ago
jvoisin
b1eb0536b8
Fix a crash when transcoding a track without artist
6 years ago
jvoisin
e283ac46a8
Fix downloads with embedded covers
...
Previously, this would always fail with
embedded covers.
6 years ago
jvoisin
b697dc5bfc
An other batch of LGTM-found issues
6 years ago
tesshucom
1c4a70af99
Fixed null check with StringUtils/ObjectUtils.
6 years ago
Peter Marheine
3efa2d3e2c
Remove the option to never set Content-Length
...
This workaround is obsolete with correct handling of ranges when
requested.
6 years ago
Peter Marheine
9be2a8892f
More correctly handle stream ranges
...
When transcoding, always use chunked transfers and report that ranges
are not supported. When not transcoding, support returning ranges but
only if requested.
6 years ago
Peter Marheine
3e97186043
Omit unnecessary null check on ranges
6 years ago
Peter Marheine
47eefc1369
Refactor output streaming for readability
...
The core loop was put together confusingly; this encapsulates the
process of constructing an OutputStream and reformats some.
6 years ago
Peter Marheine
cae8f8b4e5
Reformat stream controller some
...
Mostly just whitespace changes, shortening lines for readability. Adds a
few comments that outline what's supposed to happen.
6 years ago
Peter Marheine
d42af4575f
Add some @Nullable annotations
...
Making it easier to tell where API contracts allow nulls, where it's
otherwise unclear without reading the implementation.
6 years ago
Peter Marheine
5077e0d5e1
Short circuit RangeOutputStream for open ranges
...
There's no reason to wrap a stream in an output that will do nothing, as
when the requested range is 0-; eg the entire stream.
6 years ago
jvoisin
ab03526620
Fix two NULL-deref
6 years ago
François-Xavier Thomas
f57ad3f27b
Fix typo in anonymous user name ( #663 )
6 years ago
François-Xavier Thomas
8a90d9f77b
Add system properties for persisting the 'remember me' key
...
This adds the 'airsonic.rememberMeKey' system property (can be set from
command-line with `-Dairsonic.rememberMeKey=<value>`) as well as a
'RememberMeKey' setting in airsonic.properties, so that the key used for
generating 'remember me' tokens can be persisted across server restarts.
It also adds a default, insecure key in case we are running in
development mode with the 'airsonic.development' property set.
6 years ago
jvoisin
348c698e35
Remove the /db page
...
This page wasn't linked anywhere, and was
allowing an administrator to issue arbitrary sql
comments, and was vulnerable to reflected XSS.
We should get rid of it. If you really want to issue
SQL commands, just ssh to your instance and do it from here.
6 years ago