From b242175e181b4d9cbcd4087a38c9601ffba7ddc7 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Sun, 1 Nov 2009 15:27:55 +0100 Subject: song_save: increased maximum line length to 32 kB The line buffer had a fixed size of 5 kB, and was allocated on the stack. This was too small for some users. As a hotfix, we're increasing the buffer size to 32 kB now, allocated on the heap. In MPD 0.16, we'll switch to dynamic allocation. --- src/song_save.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/song_save.c b/src/song_save.c index 8f4e1614d..2d6297f3e 100644 --- a/src/song_save.c +++ b/src/song_save.c @@ -21,7 +21,6 @@ #include "song.h" #include "tag_save.h" #include "directory.h" -#include "path.h" #include "tag.h" #include @@ -113,12 +112,15 @@ matchesAnMpdTagItemKey(char *buffer, enum tag_type *itemType) void readSongInfoIntoList(FILE *fp, struct songvec *sv, struct directory *parent) { - char buffer[MPD_PATH_MAX + 1024]; + enum { + buffer_size = 32768, + }; + char *buffer = g_malloc(buffer_size); struct song *song = NULL; enum tag_type itemType; const char *value; - while (fgets(buffer, sizeof(buffer), fp) && + while (fgets(buffer, buffer_size, fp) && !g_str_has_prefix(buffer, SONG_END)) { g_strchomp(buffer); @@ -156,6 +158,8 @@ void readSongInfoIntoList(FILE *fp, struct songvec *sv, g_error("unknown line in db: %s", buffer); } + g_free(buffer); + if (song) insertSongIntoList(sv, song); } -- cgit v1.2.3 From 8c0680f6b986f7b4637139689d513e4d13c1af47 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Tue, 10 Nov 2009 20:54:17 +0100 Subject: input/lastfm: fixed variable name in GLib<2.16 code path Should be "lastfm_user", not "lastfm_username". --- src/input/lastfm_input_plugin.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src') diff --git a/src/input/lastfm_input_plugin.c b/src/input/lastfm_input_plugin.c index 0039f7069..8e13a60a9 100644 --- a/src/input/lastfm_input_plugin.c +++ b/src/input/lastfm_input_plugin.c @@ -112,7 +112,7 @@ lastfm_input_open(struct input_stream *is, const char *url) #if GLIB_CHECK_VERSION(2,16,0) q = g_uri_escape_string(lastfm_user, NULL, false); #else - q = g_strdup(lastfm_username); + q = g_strdup(lastfm_user); #endif #if GLIB_CHECK_VERSION(2,16,0) -- cgit v1.2.3 From 937b2b1744052104f243953f58809aabcd8a0770 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Tue, 10 Nov 2009 20:55:29 +0100 Subject: sticker: added fallback for sqlite3_prepare_v2() This function was not present in SQLite < 3.4. --- src/sticker.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src') diff --git a/src/sticker.c b/src/sticker.c index 0d30fbb70..cded09fca 100644 --- a/src/sticker.c +++ b/src/sticker.c @@ -27,6 +27,10 @@ #undef G_LOG_DOMAIN #define G_LOG_DOMAIN "sticker" +#if SQLITE_VERSION_NUMBER < 3003009 +#define sqlite3_prepare_v2 sqlite3_prepare +#endif + struct sticker { GHashTable *table; }; -- cgit v1.2.3