Commit Graph

33 Commits

Author SHA1 Message Date
ejurgensen
00b7b97382 [db] Make I_FNAME index case insensitive and search fname using COLLATE NOCASE
Also some cleaning up
2017-10-17 23:11:31 +02:00
ejurgensen
88a565ea2c [db] Replace sqlite3_xxx() calls outside db.c/cache.c so they are abstracted 2017-10-17 23:11:31 +02:00
ejurgensen
47585d0d03 [db] Add methods db_mprintf() and db_snprintf() which wrap sqlite 2017-10-17 23:11:31 +02:00
ejurgensen
4d47307a02 [db/filescanner] Add index on fname, change playlist matching (wip) 2017-10-17 23:11:31 +02:00
ejurgensen
45bd2d6cc8 [filescanner] Protect URL items in playlists from purge after scan 2017-10-17 23:11:31 +02:00
ejurgensen
10bd30c036 [filescanner] Update playlist scanner to use db_file_ping_bypath() to save queries 2017-10-17 23:10:21 +02:00
ejurgensen
fa2b4b810f [filescanner] Reduce number of queries during scan
Instead of SELECT'ing timestamp and then UPDATE'ing with a ping if file is
unchanged, skip the SELECT and just do a conditional UPDATE.
2017-10-17 23:10:21 +02:00
ejurgensen
95121e7157 [filescanner] Improve playlist scan speed with transactions (WIP - not working for URL's) 2017-10-17 23:10:21 +02:00
ejurgensen
0c2773039b [-] Fix alsa.c null pointer deref + some minor bugs and do some housekeeping
Thanks to Denis Denisov and cppcheck for notifying about the below. The leaks
are edge cases, but the warning of dereference of avail in alsa.c points at
a bug that could probably cause actual crashes.

[src/evrtsp/rtsp.c:1352]: (warning) Assignment of function parameter has no effect outside the function. Did you forget dereferencing it?
[src/httpd_daap.c:228]: (error) Memory leak: s
[src/library.c:280]: (warning) %d in format string (no. 2) requires 'int' but the argument type is 'unsigned int'.
[src/library.c:284]: (warning) %d in format string (no. 2) requires 'int' but the argument type is 'unsigned int'.
[src/library/filescanner_playlist.c:251]: (error) Resource leak: fp
[src/library/filescanner_playlist.c:273]: (error) Resource leak: fp
[src/outputs/alsa.c:143]: (warning) Assignment of function parameter has no effect outside the function. Did you forget dereferencing it?
[src/outputs/alsa.c:657]: (warning) Possible null pointer dereference: avail
[src/outputs/dummy.c:75]: (warning) Assignment of function parameter has no effect outside the function. Did you forget dereferencing it?
[src/outputs/fifo.c:245]: (warning) Assignment of function parameter has no effect outside the function. Did you forget dereferencing it?
[src/outputs/raop.c:1806]: (warning) Assignment of function parameter has no effect outside the function. Did you forget dereferencing it?
[src/outputs/raop.c:1371]: (warning) %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'.
[src/outputs/raop.c:1471]: (warning) %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'.
[src/outputs/raop_verification.c:705] -> [src/outputs/raop_verification.c:667]: (warning) Either the condition 'if(len_M)' is redundant or there is possible null pointer dereference: len_M.
2017-10-05 22:13:01 +02:00
ejurgensen
2d3d641f41 Merge pull request #413 from chme/realpath
[misc] Replace m_realpath with realpath from stdlib.h
2017-08-12 21:52:30 +02:00
chme
14877a49e0 [misc] Replace m_realpath with realpath from stdlib.h 2017-08-12 13:35:22 +02:00
chme
d477294809 [filescanner] Guard against modifying files outside the library and
guard against creating m3u playlists with the same virtual path like pls
playlists
2017-08-12 10:22:18 +02:00
chme
d10c3672c6 [filescanner] Add support to save/add/delete local stored playlists
Allows creating/modifying of playlists in one of the configured library
directories.
2017-08-09 21:41:32 +02:00
ejurgensen
e489f1a6a9 [configure] Use avcodec_parameters_from_context as check for codecpar 2017-08-06 22:31:43 +02:00
ejurgensen
d933e171d4 [filescanner_ffmpeg] Update to use ffmpeg's new stream->codecpar
- keep some compability with older ffmpeg/libav, but also remove some
2017-08-06 22:20:44 +02:00
chme
b6807a24aa [filescanner] Add missing break statement in process_file 2017-07-14 17:21:08 +02:00
ejurgensen
f63d103753 [raop] Add support for Apple TV device verification, required by tvOS 10.2 (fix for issue #377)
- also change how speakers are saved/retrieved from the db
- add generic authorization methods in outputs.c and player.c
- let filescanner read *.verification files (containing PIN)
- configure options to enable and disable, since libsodium is required
2017-06-19 21:52:01 +02:00
ejurgensen
283df8aa72 [misc] Consolidate control file reader (e.g. for pairing credentials) into misc.c
- also remove requirement to enter device name in .remote file
2017-06-14 23:49:18 +02:00
chme
8ed1c9c0ec [pairing] Rename 'remote_pairing_read_pin' to
'remote_pairing_kickoff_byfile'
2017-04-29 23:36:11 +02:00
chme
cc29c617b0 [filescanner] Switch argument order (input first) 2017-03-19 18:30:46 +01:00
chme
e31fea6c44 [filescanner] Remove unused include and make privat function static 2017-03-19 18:30:46 +01:00
chme
59ade61d7b [library] Rename constants 2017-03-19 18:30:46 +01:00
chme
f4aade7f3a [filescanner] Fix and refactor scanning of playlists 2017-03-19 18:30:46 +01:00
chme
a65737b4e7 [filescanner] Add scan-metadata function for non library items
For now only support scanning metadata for internet radio streams
2017-03-19 18:30:46 +01:00
chme
bdd08f516f [library] Rename 'library_process_media' to 'library_add_media' 2017-03-19 18:30:46 +01:00
chme
dadba23efc Refactor library scan of media files
Remove the data_kind specific parts out of the general library functions
and into their (library) source specific functions.
2017-03-19 18:30:46 +01:00
chme
50b28bde96 [filescanner] Remove unused scan_metadata_icy function declaration 2017-02-26 11:04:04 +01:00
chme
78975b1aa3 [filescanner_ffmpeg] Add doc to scan_metadata_ffmpeg 2017-02-26 11:04:04 +01:00
chme
e4f25f9418 [filescanner_ffmpeg] Refactor: consolidate special handling for
http-streams
2017-02-26 11:04:04 +01:00
ejurgensen
97aa544945 [library] Move library update trigger to new library module 2017-01-28 22:20:35 +01:00
ejurgensen
60daf03f66 [cache/scan] Let notifications from db.c about library updates go through
filescanner/listener instead of directly to the cache
2017-01-27 22:25:32 +01:00
chme
00efed7988 [filescanner] Fix scanning of fifos 2017-01-14 13:59:14 +01:00
chme
528614909c [filescanner/library] Move filescanner to subfolder 2017-01-13 19:02:47 +01:00