mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-31 14:33:54 -04:00
MOBI debug: Fix reading of first and last text record numbers from MOBI 6 headers
This commit is contained in:
parent
75b30cf99a
commit
bb4ae8102e
@ -306,6 +306,11 @@ class MOBIHeader(object): # {{{
|
|||||||
self.extra_data_flags = 0
|
self.extra_data_flags = 0
|
||||||
if self.has_extra_data_flags:
|
if self.has_extra_data_flags:
|
||||||
self.unknown4 = self.raw[184:192]
|
self.unknown4 = self.raw[184:192]
|
||||||
|
if self.file_version < 8:
|
||||||
|
self.first_text_record, self.last_text_record = \
|
||||||
|
struct.unpack_from(b'>HH', self.raw, 192)
|
||||||
|
self.fdst_count = struct.unpack_from(b'>L', self.raw, 196)
|
||||||
|
else:
|
||||||
self.fdst_idx, self.fdst_count = struct.unpack_from(b'>LL',
|
self.fdst_idx, self.fdst_count = struct.unpack_from(b'>LL',
|
||||||
self.raw, 192)
|
self.raw, 192)
|
||||||
if self.fdst_count <= 1:
|
if self.fdst_count <= 1:
|
||||||
@ -409,6 +414,10 @@ class MOBIHeader(object): # {{{
|
|||||||
a('DRM Flags: %r'%self.drm_flags)
|
a('DRM Flags: %r'%self.drm_flags)
|
||||||
if self.has_extra_data_flags:
|
if self.has_extra_data_flags:
|
||||||
a('Unknown4: %r'%self.unknown4)
|
a('Unknown4: %r'%self.unknown4)
|
||||||
|
if hasattr(self, 'first_text_record'):
|
||||||
|
a('First text record: %d'%self.first_text_record)
|
||||||
|
a('Last text record: %d'%self.last_text_record)
|
||||||
|
else:
|
||||||
r('FDST Index', 'fdst_idx')
|
r('FDST Index', 'fdst_idx')
|
||||||
a('FDST Count: %d'% self.fdst_count)
|
a('FDST Count: %d'% self.fdst_count)
|
||||||
r('FCIS number', 'fcis_number')
|
r('FCIS number', 'fcis_number')
|
||||||
|
Loading…
x
Reference in New Issue
Block a user