Change the way ffms2 index cache files are named to use source filename (without path) + source file's size in bytes + source file modification time, instead of just source file path + size in bytes, in order to make reusing index cache files on other computers easier. Closes #1008.
Originally committed to SVN as r3582.
This commit is contained in:
parent
ab269aac37
commit
6490c82e79
1 changed files with 6 additions and 3 deletions
|
@ -203,17 +203,20 @@ void FFmpegSourceProvider::SetLogLevel() {
|
||||||
/// @brief Generates an unique name for the ffms2 index file and prepares the cache folder if it doesn't exist
|
/// @brief Generates an unique name for the ffms2 index file and prepares the cache folder if it doesn't exist
|
||||||
/// @param filename The name of the source file
|
/// @param filename The name of the source file
|
||||||
/// @return Returns the generated filename.
|
/// @return Returns the generated filename.
|
||||||
wxString FFmpegSourceProvider::GetCacheFilename(const wxString& filename)
|
wxString FFmpegSourceProvider::GetCacheFilename(const wxString& _filename)
|
||||||
{
|
{
|
||||||
// Get the size of the file to be hashed
|
// Get the size of the file to be hashed
|
||||||
wxFileOffset len = 0;
|
wxFileOffset len = 0;
|
||||||
{
|
{
|
||||||
wxFile file(filename,wxFile::read);
|
wxFile file(_filename,wxFile::read);
|
||||||
if (file.IsOpened()) len = file.Length();
|
if (file.IsOpened()) len = file.Length();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
wxFileName filename(_filename);
|
||||||
|
|
||||||
// Generate string to be hashed
|
// Generate string to be hashed
|
||||||
wxString toHash = filename + wxString::Format(_T(":%i"),len);
|
wxString toHash = filename.GetFullName() + wxString::Format(_T(":%i"),len)
|
||||||
|
+ wxString::Format(_T(":%i"), filename.GetModificationTime().GetTicks());
|
||||||
|
|
||||||
// Get the MD5 digest of the string
|
// Get the MD5 digest of the string
|
||||||
const wchar_t *tmp = toHash.wc_str();
|
const wchar_t *tmp = toHash.wc_str();
|
||||||
|
|
Loading…
Reference in a new issue