As of Qt 5.10 the badly named created() which would fall back to POSIX
ctime if birthtime wasn't supported (as was the case on basically every
Unix filesystem up to some decades ago) is deprecated and replaced by
the better named birthTime or metadataChangeTime (yay!).
As of some years now, created() returns birthtime under FreeBSD, but
either due to the protocol or lack of implementation, this returns -1
under FreeBSD mounting a ZFS pool from a FreeBSD server with NFSv3.
This would render Clementine completely useless. Local filesystems are
not affected though. The fix is to catch the -1 birthtime and use mtime
instead, which is a more meaningful value anyway.
This closes issue #6423.
Commit 96a7e18a8d2be8d9f3223a6a6c81fbaac1179869 by @smithjd15 from
2019-04-03 fixed a number of potential zero-value field values, but it
also flipped the early exit condition skipping saving a rating to file.
It seems out of place with the rest of the commit, so considering it a
mistake and reverting to the original condition.
Manually tested; works and saves again ratings to file.
Methods QString::fromAscii and QString::toAscii have been deprecated in Qt 5 (https://doc.qt.io/qt-5/qstring-obsolete.html).
This commit replaces calls to QString::fromAscii by calls to QString::fromLatin1 and calls to QString::toAscii by calls to QString::toLatin1.
This allows successful build when merging branch master into branch qt5.
Current VGM format implementation in GStreamer (gstgme) only supports Sega Geneses (Mega Drive) and Sega Master System emulation.
GStreamer also cannot handle the VGZ format (a shorthand for vgm.gz, a gzipped archive that contains a song) which means
that users will currently have to extract the contents of their VGZ files to individual vgm files.
* Fix Seafile setting page loading
Check access_token instead of QSetting parameters to make
sure that we're logged in.
* Use CaseInsensitive file type checking (#5499)
CloudFileService and TagReader classes use
QString::endWith() method for checking file type.
This method is CaseSensitive by default.
Stashed commit of the following:
e54bcd2f058d186c2c919a84152ed5e8526047fc
Fixed bugs/comments from John Maguire
01c71c4c67be44dd6889498abc323a6d2d20dd99
Added description "Clementine editor" to new created lyrics frames.
70dfa0d1f177523ff897985ae022979cd052a6ed
Updated the SetTextFrame method as well:
Existing frames are cached and only the first frame (which is actually shown in the metadata editor) will be updated.
Prevents the cruel deletion of all other existing frames in a well defined mp3-file.
dfddf76eda417442c8c168eb8868038b0675cb10
Updated behavior of metadata-editor concerning lyrics (might follow for other id3v2-tag properties):
Existing further frames in the tags are not deleted but cached so only the true changes by the metadata-editor are applied on the edited frame.
Further frames in the metadata are preserved.