Belbo
39e122a4ff
Fixed dangling pointer to random state array
...
The C library function initstate(), at least in macOS El Capitan, not only sets the state array given to it as the second argument, but also accesses the state array given to it in a previous call! (I don't know why, or if that behaviour is correct, but macOS seems to do that anyhow).
Therefore, we cannot pass a local variable to it. As soon as the player thread stops, it will be a dangling pointer, and when a new player thread is started afterwards, initstate() will dereference that dangling pointer with unforeseeable consequences.
2017-10-31 23:19:22 +01:00
Belbo
a704b2fe0b
handle_announce() waits for playing_conn to stop if it's already shutting down
...
- If playing_conn is already stopping, handle_announce() waits one second for it to stop. This gives the current RTSP connection a better chance to get the player, if it has been started very quickly after the previous RTSP connection had decided to stop. iTunes can sometimes be very quick in starting a new RTSP connection after tearing down the previous one, but shairport_sync unfortunately needs at least 100ms to shut down the old connection.
- cleanup_threads() sets playing_conn to NULL if it points to the removed thread, otherwise playing_conn would be a dangling pointer, which is bad, because handle_announce() dereferences it unless it is NULL.
2017-10-31 23:19:22 +01:00
Belbo
19ff6042cf
Prevent buffer overflow in log functions
...
die(), warn(), debug() and inform() write the string into a limited internal buffer first. They now use vsnprintf() instead of vsprintf() to prevent an overflow of that buffer.
2017-10-31 23:19:21 +01:00
Mike Brady
9f2acec154
Update RELEASENOTES.md
2017-10-30 09:49:20 +00:00
Mike Brady
d46172e2eb
Don't disable PulseAudio autospawn
2017-10-30 10:45:38 +01:00
Mike Brady
5fba88cd60
Add an exit diagnostic, clean up a dbus flag
2017-10-30 10:37:34 +01:00
Mike Brady
91c6587d78
Address a warning about a buffer being too short.
2017-10-25 19:31:10 +01:00
Mike Brady
d406514966
Correct a few warnings that show upo in Clang but not in GCC
2017-10-24 10:30:20 +01:00
Mike Brady
588c551bae
Correct a Makefile bug that was silent in Linux but caused problems in FreeBSD
2017-10-24 10:29:43 +01:00
Mike Brady
7389ea8099
Update RELEASENOTES.md
2017-10-22 10:23:48 +01:00
Mike Brady
6467803858
Adjust the debug level of buffers exhausted and network condition messages.
2017-10-22 11:20:21 +02:00
Mike Brady
338831455b
Oops -- a little typo.
2017-10-15 14:38:52 +01:00
Mike Brady
d3241cfeaf
Update RELEASENOTES.md
2017-10-15 14:29:33 +01:00
Mike Brady
f27f4db9b6
Update RELEASENOTES.md
2017-10-15 14:29:04 +01:00
Mike Brady
90874ea6f8
Merge branch 'development' of https://github.com/mikebrady/shairport-sync into development
...
Oops.
2017-10-15 14:24:14 +01:00
Mike Brady
3cb86f400b
Add the 'dapo' metadata message, giving the DACP port number when found
2017-10-15 14:23:09 +01:00
Mike Brady
415b3f4ba9
Generalise volumeup to any command.
2017-10-15 13:08:21 +01:00
Mike Brady
ca29610722
Update RELEASENOTES.md
2017-10-13 22:24:06 +01:00
Mike Brady
b3a90f9d6d
Make the volumeup command work with IPv6 -- use the scope_id
2017-10-13 22:16:50 +01:00
Mike Brady
ce06d45033
Hook up "volumeup" remote control command -- doesn't work on ipv6, it seems
2017-10-09 22:14:34 +01:00
Mike Brady
c3bfb048ca
Checnk the order of the commands a little
2017-10-09 11:02:54 +01:00
Mike Brady
687213e1f0
Use the DESTDIR variable to make packaging easier
2017-10-09 11:02:25 +01:00
Mike Brady
6f8bd1a6e5
Bump to indicate cleanup of configuration files and fixup of installation for dbus stuff.
2017-10-09 10:47:17 +01:00
Mike Brady
7f1b06ae16
Don't need it any more.
2017-10-09 10:46:10 +01:00
Mike Brady
c81ec87dc5
Add in code to install the xml file in the local interfaces directory
2017-10-09 10:44:47 +01:00
Mike Brady
fe51dce110
Stop using the DBUS_SERVICES_DIR stuff
2017-10-09 10:43:48 +01:00
Mike Brady
3da6f449d1
Remove the need for the AS_AC_EXPAND macro and remove the m4 subdirectory containing it
2017-10-09 10:40:12 +01:00
Mike Brady
eec0420a27
Tighten up the ownership policy
2017-10-09 10:38:47 +01:00
Mike Brady
1e0d0944c0
Tidy up configure.ac and drop old pulseaudio back end
2017-10-09 09:38:35 +01:00
Mike Brady
578981887e
A little experimentation with dbus
2017-10-07 20:49:32 +01:00
Mike Brady
d343a851c0
Some spring cleaning using clang-format
2017-10-05 17:48:24 +01:00
Mike Brady
87bf5e87ac
Add avahi code to look for the rmeote control information for the client and get the port number from it.
2017-10-05 17:40:51 +01:00
Mike Brady
139c18bf3e
Add avahi code to look for the rmeote control information for the client and get the port number from it.
2017-10-05 17:39:32 +01:00
Mike Brady
44c39fee6a
Update README.md
2017-10-02 11:22:04 +01:00
Mike Brady
7e233671e1
Update README.md
2017-09-26 16:14:50 +01:00
Mike Brady
d63768908a
Update RELEASENOTES.md
2017-09-26 16:10:43 +01:00
Mike Brady
10b51b965e
Merge pull request #594 from nbgl/dev-linear-volume
...
Fix volume bug.
Many thanks for this. I think that in the past the program used to terminate in this case and I changed it to simply continuing and, inadvertently, to failing silently!
2017-09-26 16:03:07 +01:00
Jakub Nabaglo
90f779dc74
Minor cleanup
2017-09-26 21:37:01 +10:00
Jakub Nabaglo
2915e6672c
Attempt to fix hardware volume bug on devices without a linear scale
2017-09-26 17:24:55 +10:00
Mike Brady
2a4062fdc4
3.2d8
2017-09-25 18:12:05 +01:00
Mike Brady
3d3dc6ba68
Try to regenerate the PID directory if it doesn't exist
2017-09-25 18:10:07 +01:00
Mike Brady
d4129f4b36
Try to regenerate the PID directory if it doesn't exist
2017-09-25 18:09:29 +01:00
Mike Brady
c1043a4080
Merge branch 'master' into piddircreate
...
Add documentation updates.
2017-09-25 17:17:52 +01:00
Mike Brady
e2d37dbe34
Update README.md
2017-09-25 17:10:46 +01:00
Mike Brady
76fd8a545a
Update README.md
2017-09-25 17:10:41 +01:00
Mike Brady
60ead5a3cd
Update README.md
2017-09-25 17:09:04 +01:00
Mike Brady
d5ba8b7511
Update README.md
2017-09-25 17:08:57 +01:00
Mike Brady
825b418b94
Make PID directory path creation recursive and tidy up some code formatting.
2017-09-24 15:52:26 +01:00
Mike Brady
a9b6c85ada
Create the directory for the PID file, if necessary
2017-09-23 05:26:37 -07:00
Mike Brady
5d5802db92
Create the directory for the PID file, if necessary
2017-09-23 05:25:48 -07:00