diff options
| author | Takashi Iwai <tiwai@suse.de> | 2025-12-01 16:25:31 +0100 |
|---|---|---|
| committer | Takashi Iwai <tiwai@suse.de> | 2025-12-01 16:25:31 +0100 |
| commit | 72987d2ddc7e4d883d23be87eb858a003b81e2e0 (patch) | |
| tree | 9d7120886e71d3ec864f8967e3f25c7bcae6bcd9 /tools/net/ynl/pyynl/ynl_gen_c.py | |
| parent | b72a6ddf6af225957d4b36f858d2a67b2e31fab6 (diff) | |
| parent | 324f3e03e8a85931ce0880654e3c3eb38b0f0bba (diff) | |
Merge branch 'for-linus' into for-next
Pull remaining 6.18-devel changes.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'tools/net/ynl/pyynl/ynl_gen_c.py')
| -rwxr-xr-x | tools/net/ynl/pyynl/ynl_gen_c.py | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/tools/net/ynl/pyynl/ynl_gen_c.py b/tools/net/ynl/pyynl/ynl_gen_c.py index 58086b101057..aadeb3abcad8 100755 --- a/tools/net/ynl/pyynl/ynl_gen_c.py +++ b/tools/net/ynl/pyynl/ynl_gen_c.py @@ -861,6 +861,18 @@ class TypeIndexedArray(Type): return [f"{member} = {self.c_name};", f"{presence} = n_{self.c_name};"] + def free_needs_iter(self): + return self.sub_type == 'nest' + + def _free_lines(self, ri, var, ref): + lines = [] + if self.sub_type == 'nest': + lines += [ + f"for (i = 0; i < {var}->{ref}_count.{self.c_name}; i++)", + f'{self.nested_render_name}_free(&{var}->{ref}{self.c_name}[i]);', + ] + lines += f"free({var}->{ref}{self.c_name});", + return lines class TypeNestTypeValue(Type): def _complex_member_type(self, ri): |