binman: Update entry.SetOffsetSize to be optional
At present this function always sets both the offset and the size of entries. But in some cases we want to set only one or the other, for example with the forthcoming ifwi entry, where we only set the offset. Update the function to handle this. Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
fa1c937832
commit
cf54904a99
@ -236,14 +236,15 @@ class Section(object):
|
||||
|
||||
Args:
|
||||
name: Entry name to update
|
||||
offset: New offset
|
||||
size: New size
|
||||
offset: New offset, or None to leave alone
|
||||
size: New size, or None to leave alone
|
||||
"""
|
||||
entry = self._entries.get(name)
|
||||
if not entry:
|
||||
self._Raise("Unable to set offset/size for unknown entry '%s'" %
|
||||
name)
|
||||
entry.SetOffsetSize(self._skip_at_start + offset, size)
|
||||
entry.SetOffsetSize(self._skip_at_start + offset if offset else None,
|
||||
size)
|
||||
|
||||
def GetEntryOffsets(self):
|
||||
"""Handle entries that want to set the offset/size of other entries
|
||||
|
@ -368,13 +368,21 @@ class Entry(object):
|
||||
Dict:
|
||||
key: Entry type
|
||||
value: List containing position and size of the given entry
|
||||
type.
|
||||
type. Either can be None if not known
|
||||
"""
|
||||
return {}
|
||||
|
||||
def SetOffsetSize(self, pos, size):
|
||||
self.offset = pos
|
||||
self.size = size
|
||||
def SetOffsetSize(self, offset, size):
|
||||
"""Set the offset and/or size of an entry
|
||||
|
||||
Args:
|
||||
offset: New offset, or None to leave alone
|
||||
size: New size, or None to leave alone
|
||||
"""
|
||||
if offset is not None:
|
||||
self.offset = offset
|
||||
if size is not None:
|
||||
self.size = size
|
||||
|
||||
def SetImagePos(self, image_pos):
|
||||
"""Set the position in the image
|
||||
|
Loading…
Reference in New Issue
Block a user