From fa6075e5515c6878b2c1fe1c6435dd7ed847857d Mon Sep 17 00:00:00 2001 From: Stephen Frost Date: Fri, 8 Apr 2016 16:30:02 -0400 Subject: [PATCH] Fix improper usage of 'dump' bitmap Now that 'dump' is a bitmap, we can't simply set it to 'true'. Noticed while debugging the prior issue. --- src/bin/pg_dump/pg_dump_sort.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/bin/pg_dump/pg_dump_sort.c b/src/bin/pg_dump/pg_dump_sort.c index 36de6b62573..dc35a937275 100644 --- a/src/bin/pg_dump/pg_dump_sort.c +++ b/src/bin/pg_dump/pg_dump_sort.c @@ -848,9 +848,14 @@ repairTypeFuncLoop(DumpableObject *typeobj, DumpableObject *funcobj) if (typeInfo->shellType) { addObjectDependency(funcobj, typeInfo->shellType->dobj.dumpId); - /* Mark shell type as to be dumped if any such function is */ + /* + * Mark shell type (always including the definition, as we need + * the shell type defined to identify the function fully) as to be + * dumped if any such function is + */ if (funcobj->dump) - typeInfo->shellType->dobj.dump = true; + typeInfo->shellType->dobj.dump = funcobj->dump | + DUMP_COMPONENT_DEFINITION; } }