Commit message (Collapse) | Author | Files | Lines | ||
---|---|---|---|---|---|
2008-12-30 | main: use the GLib main loop | Max Kellermann | 12 | -567/+173 | |
This is a rather huge patch, which unfortunately cannot be splitted. Instead of using our custom ioops.h library, convert everything to use the GLib main loop. | |||||
2008-12-30 | main_notify: make the read side of the pipe blocking | Max Kellermann | 3 | -27/+6 | |
Currently, both sides of the pipe are blocking, although we do not need blocking read(). Convert it back to blocking. Eliminate the select() from wait_main_task(). | |||||
2008-12-30 | main_notify: removed notify object, use only pipe | Max Kellermann | 1 | -34/+17 | |
To wake up the main thread, don't attempt to use a GCond/GMutex (struct notify). This kind of mixed wakeup method has known race conditions. The idea behind this patch is: for wakeups which happen while the main thread is sleeping, use only a pipe. For wakeups which happen while the main thread is waiting for the player thread, we can later change to GCond. For now, accept the overhead of using a pipe for the latter. In the long run, the main thread will never wait for the player thread, but will do everything asynchronously. | |||||
2008-12-30 | listen: don't make the server socket non-blocking | Max Kellermann | 1 | -7/+1 | |
There is no point in making the server socket non-blocking. We call accept() only after select() has notified us about a new connection. | |||||
2008-12-30 | utils: port set_nonblocking() to WIN32 | Max Kellermann | 1 | -0/+6 | |
The new WIN32 version of set_nonblocking() can only deal with sockets, i.e. it will fail on main_notify.c. On WIN32, we have to reimplement main_notify.c anyway, so this is not a big deal. | |||||
2008-12-30 | command: don't allow adding local files on WIN32 | Max Kellermann | 3 | -0/+8 | |
There are no unix sockets on WIN32, and therefore no authentication. WIN32 might have similar capabilities, but until we implement them, disable that MPD feature. | |||||
2008-12-30 | utils: implement my_usleep() with Sleep() on WIN32 | Max Kellermann | 1 | -0/+8 | |
Sleep() has only millisecond granularity, but good enough for now. | |||||
2008-12-30 | listen: include winsock headers on WIN32 | Max Kellermann | 1 | -0/+6 | |
On Windows, socket declarations reside in winsock.h and ws2tcpip.h. The POSIX headers are not available. | |||||
2008-12-30 | bonjour: fixed "unused parameter" warnings | Max Kellermann | 1 | -7/+13 | |
Add G_GNUC_UNUSED attributes. | |||||
2008-12-30 | zeroconf: eliminated strlen() usage from initZeroconf() | Max Kellermann | 1 | -3/+1 | |
To test if a string is empty, we can just see if the first byte is 0. No need to include string.h for strlen() here. | |||||
2008-12-30 | zeroconf: moved code to zeroconf-avahi.c and zeroconf-bonjour.c | Max Kellermann | 5 | -556/+647 | |
Moved implementation specific code to their own sources, internal declarations in zeroconf-internal.h. | |||||
2008-12-30 | zeroconf: fail if avahi service name is invalid | Max Kellermann | 1 | -8/+4 | |
If the configured avahi service name is invalid, abort MPD. Don't fall back to the default service name. | |||||
2008-12-30 | playlist: use GLib's random number generator | Max Kellermann | 1 | -7/+10 | |
srandom() and random() are not portable. Use GLib's implementation. | |||||
2008-12-30 | daemon: simplified daemonize_close_stdin() | Max Kellermann | 1 | -16/+6 | |
Don't bother to call fstat() or isatty() on STDIN_FILENO. | |||||
2008-12-30 | listen: moved redirect_stdin() to daemon.c | Max Kellermann | 4 | -29/+34 | |
redirect_stdin() is a daemonization function, and disconnecting from the standard input is always a good idea for MPD. | |||||
2008-12-30 | main: moved daemonize() to daemon.c | Max Kellermann | 4 | -59/+116 | |
2008-12-30 | listen: eliminated freeAllListenSockets() | Max Kellermann | 2 | -5/+0 | |
Merged freeAllListenSockets() into closeAllListenSockets(), because this is its only caller. | |||||
2008-12-30 | print supported decoders in --version | Viliam Mateicka | 3 | -0/+19 | |
2008-12-29 | main: disable non-portable code on WIN32 | Max Kellermann | 1 | -0/+14 | |
Disable changeToUser(), daemonize(), killFromPidFile(). | |||||
2008-12-29 | utils: implement parsePath() with g_strdup() on WIN32 | Max Kellermann | 1 | -2/+10 | |
On WIN32, parsePath() now simply duplicates the input string. There is currently nothing special we can do here. The old code was not portable on WIN32. | |||||
2008-12-29 | utils: use g_get_home_dir() | Max Kellermann | 1 | -6/+4 | |
Use g_get_home_dir() to get the home directory of the current user. This will be portable to win32. | |||||
2008-12-29 | utils: make variables more local in parsePath() | Max Kellermann | 1 | -16/+22 | |
Declare variables where they are really used. | |||||
2008-12-29 | client: include winsock headers on WIN32 | Max Kellermann | 2 | -3/+9 | |
On Windows, socket declarations reside in winsock.h and ws2tcpip.h. The POSIX headers sys/socket.h etc. are not available. | |||||
2008-12-29 | main: use g_setenv() instead of setenv() | Max Kellermann | 1 | -42/+1 | |
Removed the fallback setenv() implementation for solaris. | |||||
2008-12-29 | log: removed unused logging wrappers | Max Kellermann | 2 | -8/+0 | |
Removed GLib logging wrappers which are not used anymore. | |||||
2008-12-29 | main: use GLib logging | Max Kellermann | 1 | -33/+34 | |
2008-12-29 | path: use GLib logging | Max Kellermann | 1 | -5/+7 | |
2008-12-29 | update: use GLib logging | Max Kellermann | 1 | -18/+21 | |
2008-12-29 | alsa: use GLib logging | Max Kellermann | 1 | -29/+30 | |
2008-12-29 | jack: use GLib logging | Max Kellermann | 1 | -28/+30 | |
2008-12-29 | fifo: use GLib logging | Max Kellermann | 1 | -21/+24 | |
2008-12-29 | state_file: use GLib logging | Max Kellermann | 1 | -8/+10 | |
2008-12-29 | volume: use GLib logging | Max Kellermann | 1 | -26/+29 | |
2008-12-29 | player_thread: use GLib logging | Max Kellermann | 1 | -8/+10 | |
2008-12-29 | tag_id3: use GLib logging | Max Kellermann | 1 | -12/+19 | |
2008-12-29 | listen: use GLib logging | Max Kellermann | 1 | -29/+32 | |
2008-12-29 | utils: use GLib logging | Max Kellermann | 1 | -14/+13 | |
2008-12-29 | client: use GLib logging | Max Kellermann | 1 | -48/+53 | |
2008-12-29 | pcm: use GLib logging | Max Kellermann | 4 | -67/+76 | |
2008-12-29 | database: use GLib logging | Max Kellermann | 1 | -36/+38 | |
2008-12-29 | log: automatically append newline | Max Kellermann | 1 | -4/+19 | |
If a log message does not include a newline character, append it. | |||||
2008-12-29 | removed os_compat.h | Max Kellermann | 30 | -103/+99 | |
Only include headers which are really needed. os_compat.h aimed to make MPD easily portable, but was never actually made portable. | |||||
2008-12-29 | command: use gmtime() on WIN32 | Max Kellermann | 1 | -1/+8 | |
gmtime_r() is not available. | |||||
2008-12-29 | condition: removed cond_timedwait() and cond_signal_async() | Max Kellermann | 2 | -38/+0 | |
These methods are unused. | |||||
2008-12-29 | tag_id3: strip leading and trailing whitespace from ID3 tags | Thomas Jansen | 1 | -2/+6 | |
Fix for bug #1491. | |||||
2008-12-29 | mp4: support the writer/composer tag | Frank Mulder | 1 | -0/+2 | |
I tried to search for a certain composer in my collection, but only non-mp4 files showed up. The source code reveals that this tag is not read. This can be fixed by reading the 'Writer' tag field, in mp4_plugin.c, in function mp4_load_tag. I actually tried this, and after compiling with those lines added, also mp4 (.m4a) files showed up when searching for a composer. | |||||
2008-12-29 | update: fixing empty filenames in archives | Viliam Mateicka | 2 | -1/+8 | |
2008-12-28 | osx_plugin: migrate from pthread to glib threads | Thomas Jansen | 1 | -19/+18 | |
2008-12-28 | output: migrate from pthread to glib threads | Thomas Jansen | 4 | -12/+9 | |
2008-12-28 | tag & tag_pool: migrate from pthread to glib threads | Thomas Jansen | 4 | -11/+31 | |