--- a/metadata.c +++ b/metadata.c @@ -676,6 +676,7 @@ memset(&m, '\0', sizeof(m)); memset(&video, '\0', sizeof(video)); + memset(nfo, '\0', sizeof(nfo)); //DEBUG DPRINTF(E_DEBUG, L_METADATA, "Parsing video %s...\n", name); if ( stat(path, &file) != 0 ) --- a/minidlna.c +++ b/minidlna.c @@ -1049,8 +1049,17 @@ if (!sqlite3_threadsafe() || sqlite3_libversion_number() < 3005001) DPRINTF(E_ERROR, L_GENERAL, "SQLite library is not threadsafe! " "Inotify will be disabled.\n"); - else if (pthread_create(&inotify_thread, NULL, start_inotify, NULL) != 0) - DPRINTF(E_FATAL, L_GENERAL, "ERROR: pthread_create() failed for start_inotify. EXITING\n"); + else + { + pthread_attr_t attr, *attrptr = NULL; + if ((pthread_attr_init(&attr) == 0) && (pthread_attr_setstacksize(&attr, 192 * 1024) == 0)) + attrptr = &attr; + else + DPRINTF(E_ERROR, L_GENERAL, "Failed to set inotify thread stack size," + "continuing with the default.\n"); + if (pthread_create(&inotify_thread, attrptr, start_inotify, NULL) != 0) + DPRINTF(E_FATAL, L_GENERAL, "ERROR: pthread_create() failed for start_inotify. EXITING\n"); + } } #endif smonitor = OpenAndConfMonitorSocket();