Skip to content

Commit a0fcdbb

Browse files
author
Robert McNamara
committed
Update the seektables when a filename changes on scan in MythVideo.
Patch from Johnny Stenback. Fixes #9415.
1 parent c2304c0 commit a0fcdbb

File tree

1 file changed

+14
-2
lines changed

1 file changed

+14
-2
lines changed

mythtv/libs/libmythmetadata/videometadata.cpp

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -910,7 +910,7 @@ int VideoMetadata::UpdateHashedDBRecord(const QString &hash,
910910
{
911911
MSqlQuery query(MSqlQuery::InitCon());
912912

913-
query.prepare("SELECT intid FROM videometadata WHERE "
913+
query.prepare("SELECT intid,filename FROM videometadata WHERE "
914914
"hash = :HASH");
915915
query.bindValue(":HASH", hash);
916916

@@ -924,6 +924,7 @@ int VideoMetadata::UpdateHashedDBRecord(const QString &hash,
924924
return -1;
925925

926926
int intid = query.value(0).toInt();
927+
QString oldfilename = query.value(1).toString();
927928

928929
query.prepare("UPDATE videometadata SET filename = :FILENAME, "
929930
"host = :HOST WHERE intid = :INTID");
@@ -933,7 +934,18 @@ int VideoMetadata::UpdateHashedDBRecord(const QString &hash,
933934

934935
if (!query.exec() || !query.isActive())
935936
{
936-
MythDB::DBError("Video hashed metadata update", query);
937+
MythDB::DBError("Video hashed metadata update (videometadata)", query);
938+
return -1;
939+
}
940+
941+
query.prepare("UPDATE filemarkup SET filename = :FILENAME "
942+
"WHERE filename = :OLDFILENAME");
943+
query.bindValue(":FILENAME", file_name);
944+
query.bindValue(":OLDFILENAME", oldfilename);
945+
946+
if (!query.exec() || !query.isActive())
947+
{
948+
MythDB::DBError("Video hashed metadata update (filemarkup)", query);
937949
return -1;
938950
}
939951

0 commit comments

Comments
 (0)