[mythtv] Eit fixup for comhem

Torbjörn Jansson torbjorn.jansson at mbox200.swipnet.se
Thu May 25 14:43:36 UTC 2006

mythtv-dev-bounces at mythtv.org <> wrote:
> On Thu, 2006-05-25 at 15:42 +0200, Torbjörn Jansson wrote:
>> I know.
>> I had to do a smal test program to see what was happening.
>> The problem have to do with what type the key is in init_fixup.
>> This "fix[40999 << 16] = kFixComHem;" makes the cast-to-int case
>> work and "fix[(uint64_t)40999 << 16] = kFixComHem;" makes the uint
>> and uint64_t case work. 
>> Maybe the index operator in QMap is doing something wierd?
> Have you tried converting it to an STL map?
> Perhaps the QMap isn't completely 64 bit safe. Are you
> using an AMD64 chip & kernel? I am, but I'm using a
> 64 bit Qt; I could see a 32 bit Qt running in compatibility
> mode on an AMD64 having this kind of problem.

No, i'm not using an amd64.
If the networkid is treated as signed 16 bit value somwere, 40999 will be
negative because the highest bit is 1, but not the other network ids in the
init_fixup function since they are much lower.

I added a few casts to EITHelper::AddEIT and things seems to be working now,
the fixup is called and subtitles is parsed out properly.

More information about the mythtv-dev mailing list