diff --git a/NEWS b/NEWS
index 66862543b..64490ac36 100644
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,6 @@
 ver 0.19.2 (not yet released)
 * playlist
+  - don't allow empty playlist name
   - m3u: don't ignore unterminated last line
   - m3u: recognize the file suffix ".m3u8"
 * decoder
diff --git a/src/PlaylistFile.cxx b/src/PlaylistFile.cxx
index f0aa2d2d7..ab269378a 100644
--- a/src/PlaylistFile.cxx
+++ b/src/PlaylistFile.cxx
@@ -64,6 +64,10 @@ spl_global_init(void)
 bool
 spl_valid_name(const char *name_utf8)
 {
+	if (*name_utf8 == 0)
+		/* empty name not allowed */
+		return false;
+
 	/*
 	 * Not supporting '/' was done out of laziness, and we should
 	 * really strive to support it in the future.