Opened 8 years ago
Closed 6 years ago
#13057 closed Patch - Bug Fix (fixed)
Program title and/or description sometimes wrong
Reported by: | Owned by: | Klaas de Waal | |
---|---|---|---|
Priority: | minor | Milestone: | 31.0 |
Component: | MythTV - EIT | Version: | Master Head |
Severity: | low | Keywords: | EIT DVB-C UpdateDB |
Cc: | Ticket locked: | no |
Description
MythTV guide data, as received from DVB-C, has incidentally a wrong program title and/or a wrong program description. Attached is a picture of my TV recordings, showing the program title "Live motorsport" (which is OK) with a description of a football match in South Korea (which is NOT OK). Attached is also a picture from the guide of the TV itself which shows the correct program description. This is caused by a few lines in libs/libmythtv/programdata.cpp that only accepts updates for title, subtitle and description fields of EPG data when the new EPG data for these field is LONGER than the previously received data for that field. This means that, for example, the broadcaster does change its programming and does change "Live Motorsport" to "Football" the title of the program will never change to "Football" in MythTV because the title is shorter. As a result, recording rules based on string pattern matching of title and/or description can fail to record the correct program. This bug has been in MythTV since about the year zero.
Details: This happens in UpdateDB, starting at line 616. This function is called when existing program data is to be replaced by new data. In this function the old program data is updated on a field by field basis. Attached is a fixed version in which the new data completely replaces the old data.
This has been tested with my DVB-C signal (Ziggo in The Netherlands) but it has not been tested with DVB-T or DVB-S.
Attachments (6)
Change History (11)
Changed 8 years ago by
Attachment: | 20170604_090515_2.jpg added |
---|
Changed 8 years ago by
Attachment: | 20170604_090636_2.jpg added |
---|
correct program description on TV guide
Changed 8 years ago by
Attachment: | programdata.cpp.master.kdw added |
---|
libs/libmythtv/programdata.cpp with fix
Changed 8 years ago by
Attachment: | programdata.cpp.fixed_with_debug added |
---|
libs/libmythtv/programdata.cpp with fix and with lots of debug code
comment:1 Changed 8 years ago by
Klaas,
Can you do a git diff to capture the changes to programdata.cpp please?
Regards Stuart
comment:2 Changed 8 years ago by
Created pull request for my commit 0c66e7f298eac4ebf60d047e3efb4fb7c5844b32
Changed 8 years ago by
Attachment: | programdata.cpp.diff added |
---|
git diff of final version, identical to pull request
comment:3 Changed 6 years ago by
Updated the patch for today's master.
The changes are now limited to title/subtitle/description and airdate.
The existing code for title/subtitle/description compares the string as stored in the database with the newly received string and uses the longest. This is wrong as already documented in the original bug report.
This patch copies the old value of title/subtitle/description only if there is no new value but there is an old value.
Example: the modification for the title:
- if (match.title.length() >= ltitle.length()) + if (ltitle.isEmpty() && !match.title.isEmpty()) ltitle = match.title;
N.B. The code for title/subtitle/description update is copied from branch fixes/0.27 of the mythtv fork of dcjm/David Matthews. He apparently found this bug also but he has not submitted a ticket for this AFAIK.
The attached patch does also have a correction for the update of the airdate:
- if (!lairdate && !match.airdate) + if (!lairdate && match.airdate) lairdate = match.airdate;
The old code uses the old airdate only if the newly received airdate and the old airdate are both zero. This is obviously a mistake. The new code uses the old airdate only if the new airdate is zero and the old airdate is not.
Changed 6 years ago by
Attachment: | 20190131-programdata-update.patch added |
---|
Fix for update of title/subtitle/description and airdate.
comment:4 Changed 6 years ago by
Milestone: | unknown → 31.0 |
---|---|
Owner: | changed from Karl Egly to Klaas de Waal |
Status: | new → accepted |
wrong program description on mythtv