From d16038073629b3f89acabfbd2f2d9911b2a771d4 Mon Sep 17 00:00:00 2001 From: Joshua Haberman Date: Fri, 27 Nov 2009 14:21:19 -0800 Subject: Update upbc to use self-describing upb_msg instead of void*. --- src/upb_def.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/upb_def.c') diff --git a/src/upb_def.c b/src/upb_def.c index 4484055..49d5f21 100644 --- a/src/upb_def.c +++ b/src/upb_def.c @@ -110,7 +110,8 @@ void _upb_msgdef_free(struct upb_msgdef *m) for (unsigned int i = 0; i < m->num_fields; i++) { struct upb_fielddef *f = &m->fields[i]; upb_string_unref(f->name); - upb_def_unref(f->ref, f->type); + if (upb_issubmsg(f) || f->type == UPB_TYPENUM(ENUM)) + upb_def_unref(f->ref, f->type); } free(m->fields); free(m); -- cgit v1.2.3