# HG changeset patch # User Matti Hamalainen # Date 1352196692 -7200 # Node ID 15f0c8e11338815f8468f514553552869185a173 # Parent bb7b3ded919a182ad14a2aa60fece7f44901b604 Increase line buffer size in songlength database reader. Fixes problems with extremely long entries. diff -r bb7b3ded919a -r 15f0c8e11338 src/xmms-sid.h --- a/src/xmms-sid.h Tue Nov 06 11:59:24 2012 +0200 +++ b/src/xmms-sid.h Tue Nov 06 12:11:32 2012 +0200 @@ -54,7 +54,9 @@ #undef HAVE_HARDSID_BUILDER /* Size for some small buffers (always static variables) */ -#define XS_BUF_SIZE (1024) +#define XS_BUF_SIZE (512) + +#define XS_BUF2_SIZE (4096) /* If defined, some dynamically allocated temp. buffers are used. * Static (#undef) might give slight performance gain, diff -r bb7b3ded919a -r 15f0c8e11338 src/xs_length.c --- a/src/xs_length.c Tue Nov 06 11:59:24 2012 +0200 +++ b/src/xs_length.c Tue Nov 06 12:11:32 2012 +0200 @@ -194,7 +194,7 @@ gint xs_sldb_read(XSSLDB *db, const gchar *dbFilename) { FILE *inFile; - gchar inLine[XS_BUF_SIZE]; + gchar inLine[XS_BUF2_SIZE]; size_t lineNum; XSSLDBNode *tmnode; assert(db); @@ -208,7 +208,7 @@ /* Read and parse the data */ lineNum = 0; - while (fgets(inLine, XS_BUF_SIZE, inFile) != NULL) { + while (fgets(inLine, XS_BUF2_SIZE, inFile) != NULL) { size_t linePos = 0; lineNum++;