From 4fd05d33272265c01f1864b7d3eb046d9d7ccf27 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Sat, 7 Jul 2018 13:57:19 -0600 Subject: libfdt: Copy the struct region in fdt_resize() At present this function appears to copy only the data before the struct region and the data in the string region. It does not seem to copy the struct region itself. From the arguments of this function it seems that it should support fdt and buf being different. This patch attempts to fix this problem. Signed-off-by: Simon Glass Signed-off-by: David Gibson --- cpukit/dtc/libfdt/fdt_sw.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'cpukit/dtc') diff --git a/cpukit/dtc/libfdt/fdt_sw.c b/cpukit/dtc/libfdt/fdt_sw.c index 178b3657b0..024f4d85de 100644 --- a/cpukit/dtc/libfdt/fdt_sw.c +++ b/cpukit/dtc/libfdt/fdt_sw.c @@ -170,7 +170,7 @@ int fdt_resize(void *fdt, void *buf, int bufsize) FDT_SW_PROBE(fdt); - headsize = fdt_off_dt_struct(fdt); + headsize = fdt_off_dt_struct(fdt) + fdt_size_dt_struct(fdt); tailsize = fdt_size_dt_strings(fdt); if ((headsize + tailsize) > bufsize) -- cgit v1.2.3