Am 15.07.10 21:06 schrieb(en) Oliver Eichler:
Just pulled the latest svn, and have a dumb question - did you check if the callsif(pNetHdr) subfile.strtbl->registerNET1(offsetNet1, pNetHdr->net1_length, pNetHdr->net1_addr_shift); also need the endian fix? net1_length is also a 32-bit...Nope didn't check. Too much other stuff. New Suse is out. :)
Looking deeper into the code, I'm *almost* sure the attached patch is needed as to properly interpret "NET" sections, if support for them (whatever they are...) is implemented some day... BTW, I'll be on vacation and away from may Mac's the next weeks, so I can build the next releases for OS X only in August. But it's not forgotten! Cheers, albrecht.
Index: src/CGarminTile.cpp =================================================================== --- src/CGarminTile.cpp (Revision 2210) +++ src/CGarminTile.cpp (Arbeitskopie) @@ -639,21 +639,21 @@ void CGarminTile::readSubfileBasics(subfile_desc_t subfile.strtbl = new CGarminStrTbl6(codepage, mask, this); subfile.strtbl->registerLBL1(offsetLbl1, gar_load(uint32_t, pLblHdr->lbl1_length), pLblHdr->addr_shift); subfile.strtbl->registerLBL6(offsetLbl6, gar_load(uint32_t, pLblHdr->lbl6_length)); - if(pNetHdr) subfile.strtbl->registerNET1(offsetNet1, pNetHdr->net1_length, pNetHdr->net1_addr_shift); + if(pNetHdr) subfile.strtbl->registerNET1(offsetNet1, gar_load(uint32_t, pNetHdr->net1_length), pNetHdr->net1_addr_shift); break; case 0x09: subfile.strtbl = new CGarminStrTbl8(codepage, mask, this); subfile.strtbl->registerLBL1(offsetLbl1, gar_load(uint32_t, pLblHdr->lbl1_length), pLblHdr->addr_shift); subfile.strtbl->registerLBL6(offsetLbl6, gar_load(uint32_t, pLblHdr->lbl6_length)); - if(pNetHdr) subfile.strtbl->registerNET1(offsetNet1, pNetHdr->net1_length, pNetHdr->net1_addr_shift); + if(pNetHdr) subfile.strtbl->registerNET1(offsetNet1, gar_load(uint32_t, pNetHdr->net1_length), pNetHdr->net1_addr_shift); break; case 0x0A: subfile.strtbl = new CGarminStrTblUtf8(codepage, mask, this); subfile.strtbl->registerLBL1(offsetLbl1, gar_load(uint32_t, pLblHdr->lbl1_length), pLblHdr->addr_shift); subfile.strtbl->registerLBL6(offsetLbl6, gar_load(uint32_t, pLblHdr->lbl6_length)); - if(pNetHdr) subfile.strtbl->registerNET1(offsetNet1, pNetHdr->net1_length, pNetHdr->net1_addr_shift); + if(pNetHdr) subfile.strtbl->registerNET1(offsetNet1, gar_load(uint32_t, pNetHdr->net1_length), pNetHdr->net1_addr_shift); break; default:;
pgpIxVgW1NOTL.pgp
Description: PGP signature
------------------------------------------------------------------------------ This SF.net email is sponsored by Sprint What will you do first with EVO, the first 4G phone? Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first
_______________________________________________ QLandkarte-users mailing list QLandkarte-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/qlandkarte-users