diff --git a/src/glib_compat.h b/src/glib_compat.h new file mode 100644 index 000000000..679307fb3 --- /dev/null +++ b/src/glib_compat.h @@ -0,0 +1,43 @@ +/* + * Copyright (C) 2003-2009 The Music Player Daemon Project + * http://www.musicpd.org + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + */ + +/* + * Compatibility with older GLib versions. Some of this isn't + * implemented properly, just "good enough" to allow users with older + * operating systems to run MPD. + */ + +#ifndef MPD_GLIB_COMPAT_H +#define MPD_GLIB_COMPAT_H + +#include + +#if !GLIB_CHECK_VERSION(2,16,0) + +static char * +g_uri_escape_string(const char *unescaped, + G_GNUC_UNUSED const char *reserved_chars_allowed, + G_GNUC_UNUSED gboolean allow_utf8) +{ + return g_strdup(unescaped); +} + +#endif /* !2.16 */ + +#endif diff --git a/src/playlist/lastfm_playlist_plugin.c b/src/playlist/lastfm_playlist_plugin.c index d7de25375..70e51c2fc 100644 --- a/src/playlist/lastfm_playlist_plugin.c +++ b/src/playlist/lastfm_playlist_plugin.c @@ -24,6 +24,7 @@ #include "uri.h" #include "song.h" #include "input_stream.h" +#include "glib_compat.h" #include @@ -55,11 +56,7 @@ lastfm_init(const struct config_param *param) return false; } -#if GLIB_CHECK_VERSION(2,16,0) lastfm_config.user = g_uri_escape_string(user, NULL, false); -#else - lastfm_config.user = g_strdup(user); -#endif #if GLIB_CHECK_VERSION(2,16,0) if (strlen(passwd) != 32) @@ -178,11 +175,9 @@ lastfm_open_uri(const char *uri) return NULL; } -#if GLIB_CHECK_VERSION(2,16,0) q = g_uri_escape_string(session, NULL, false); g_free(session); session = q; -#endif g_debug("session='%s'", session); @@ -191,11 +186,7 @@ lastfm_open_uri(const char *uri) if (strlen(uri) > 9) { char *escaped_uri; -#if GLIB_CHECK_VERSION(2,16,0) escaped_uri = g_uri_escape_string(uri, NULL, false); -#else - escaped_uri = g_strdup(uri); -#endif p = g_strconcat("http://ws.audioscrobbler.com/radio/adjust.php?" "session=", session, "&url=", escaped_uri, "&debug=0",