@@ -920,9 +920,11 @@ types:
920920 doc : |
921921 A row that holds a tag name and its ID (found only in exportExt.pdb files).
922922 seq :
923- - type : u2
923+ - id : subtype
924+ type : u2
924925 doc : |
925- Seems to always be 0x80, 0x06.
926+ Usually 0x0680, but 0x0684 means we have a long name offset
927+ embedded in the row.
926928 - id : tag_index
927929 type : u2
928930 doc : |
@@ -949,26 +951,38 @@ types:
949951 type : u4
950952 doc : |
951953 Non-zero when this row stores a tag category instead of a tag.
952- - type : u2
954+ - type : u1
953955 doc : |
954- Seems to always be 0x03, 0x1f.
955- - id : flags
956+ @flesniak says: " always 0x03, maybe an unindexed empty string"
957+ - id : ofs_name_near
956958 type : u1
957959 doc : |
958- Maybe some kind of flags?
959- - id : name
960- type : device_sql_string
961- doc : |
962- The name of the tag or tag category.
963- - type : u1
960+ The location of the variable-length name string, relative to
961+ the start of this row, unless subtype is 0x64.
962+ - id : ofs_unknown_near
963+ type : u1
964964 doc : |
965- This seems to always be 0x03 .
965+ Offset to a string that seems always to be empty .
966966 instances :
967967 is_category :
968968 value : raw_is_category != 0
969969 doc : |
970970 Indicates whether this row stores a tag category instead of a tag.
971971 -webide-parse-mode : eager
972+ ofs_name_far :
973+ pos : _parent.row_base + 0x1e
974+ type : u2
975+ doc : |
976+ For names that might be further than 0xff bytes from the
977+ start of this row, this holds a two-byte offset, and is
978+ signalled by the subtype value.
979+ if : subtype & 0x04 == 0x04
980+ name :
981+ pos : ' _parent.row_base + (subtype & 0x04 == 0x04? ofs_name_far : ofs_name_near)'
982+ type : device_sql_string
983+ doc : |
984+ The name of this tag or tag category.
985+ -webide-parse-mode : eager
972986
973987 tag_track_row :
974988 doc : |
0 commit comments