diff --git a/src/smartplaylists/smartplaylistsearchterm.cpp b/src/smartplaylists/smartplaylistsearchterm.cpp index 25d66033b..20384fc07 100644 --- a/src/smartplaylists/smartplaylistsearchterm.cpp +++ b/src/smartplaylists/smartplaylistsearchterm.cpp @@ -38,9 +38,18 @@ QString SmartPlaylistSearchTerm::ToSql() const { QString col = FieldColumnName(field_); QString date = DateName(date_, true); - QString value = value_.toString(); + QString value; value.replace('\'', "''"); + value = value_.toString(); + if (field_ == Field_Filetype) { + Song::FileType filetype = Song::FiletypeByExtension(value); + if (filetype == Song::FileType_Unknown) { + filetype = Song::FiletypeByDescription(value); + } + value = QString::number(static_cast(filetype)); + } + QString second_value; bool special_date_query = (operator_ == SmartPlaylistSearchTerm::Op_NumericDate ||