Comment 10 for bug 1551145

Revision history for this message
Olivier Tilloy (osomon) wrote :

I finally managed to use gdb to step into Qt code, and what I’m seeing in qTopLevelDomain() is that for e.g. "google.com" the sections are correctly extracted as ["google", "com"], and the for loop calls into qIsEffectiveTLD() for "com" (which should return true because "com" is part of the list at https://publicsuffix.org/list/public_suffix_list.dat), which itself calls into containsTLDEntry(), which computes a chunk index and then compares the entry to entries in that chunk. "com" is being compared to two entries: "accident-prevention.aero" and "net.ag". Those two entries are far apart in the generated table, so this doesn’t make much sense. It looks like somehow the initial computation of the chunk in containsTLDEntry() is broken.