diff options
-rw-r--r-- | pylibfdt/libfdt.i | 9 | ||||
-rw-r--r-- | tests/pylibfdt_tests.py | 1 |
2 files changed, 9 insertions, 1 deletions
diff --git a/pylibfdt/libfdt.i b/pylibfdt/libfdt.i index adb4ee8..c0a2191 100644 --- a/pylibfdt/libfdt.i +++ b/pylibfdt/libfdt.i @@ -474,10 +474,17 @@ class Fdt: Args: quiet: Errors to ignore (empty to raise on all errors) + Returns: + Error code, or 0 if OK + Raises: FdtException if any error occurs """ - return check_err(fdt_pack(self._fdt), quiet) + err = check_err(fdt_pack(self._fdt), quiet) + if err: + return err + del self._fdt[self.totalsize():] + return err def getprop(self, nodeoffset, prop_name, quiet=()): """Get a property from a node diff --git a/tests/pylibfdt_tests.py b/tests/pylibfdt_tests.py index 0467375..c9653a5 100644 --- a/tests/pylibfdt_tests.py +++ b/tests/pylibfdt_tests.py @@ -308,6 +308,7 @@ class PyLibfdtTests(unittest.TestCase): self.assertEquals(orig_size, self.fdt.totalsize()) self.assertEquals(self.fdt.pack(), 0) self.assertTrue(self.fdt.totalsize() < orig_size) + self.assertEquals(self.fdt.totalsize(), len(self.fdt.as_bytearray())) def testBadPropertyOffset(self): """Test that bad property offsets are detected""" |