@@ -10593,6 +10593,8 @@ dumpCast(Archive *fout, DumpOptions *dopt, CastInfo *cast)
1059310593 PQExpBuffer delqry ;
1059410594 PQExpBuffer labelq ;
1059510595 FuncInfo * funcInfo = NULL ;
10596+ char * sourceType ;
10597+ char * targetType ;
1059610598
1059710599 /* Skip if not to be dumped */
1059810600 if (!cast -> dobj .dump || dopt -> dataOnly )
@@ -10616,13 +10618,13 @@ dumpCast(Archive *fout, DumpOptions *dopt, CastInfo *cast)
1061610618 delqry = createPQExpBuffer ();
1061710619 labelq = createPQExpBuffer ();
1061810620
10621+ sourceType = getFormattedTypeName (fout , cast -> castsource , zeroAsNone );
10622+ targetType = getFormattedTypeName (fout , cast -> casttarget , zeroAsNone );
1061910623 appendPQExpBuffer (delqry , "DROP CAST (%s AS %s);\n" ,
10620- getFormattedTypeName (fout , cast -> castsource , zeroAsNone ),
10621- getFormattedTypeName (fout , cast -> casttarget , zeroAsNone ));
10624+ sourceType , targetType );
1062210625
1062310626 appendPQExpBuffer (defqry , "CREATE CAST (%s AS %s) " ,
10624- getFormattedTypeName (fout , cast -> castsource , zeroAsNone ),
10625- getFormattedTypeName (fout , cast -> casttarget , zeroAsNone ));
10627+ sourceType , targetType );
1062610628
1062710629 switch (cast -> castmethod )
1062810630 {
@@ -10660,8 +10662,7 @@ dumpCast(Archive *fout, DumpOptions *dopt, CastInfo *cast)
1066010662 appendPQExpBufferStr (defqry , ";\n" );
1066110663
1066210664 appendPQExpBuffer (labelq , "CAST (%s AS %s)" ,
10663- getFormattedTypeName (fout , cast -> castsource , zeroAsNone ),
10664- getFormattedTypeName (fout , cast -> casttarget , zeroAsNone ));
10665+ sourceType , targetType );
1066510666
1066610667 if (dopt -> binary_upgrade )
1066710668 binary_upgrade_extension_member (defqry , & cast -> dobj , labelq -> data );
@@ -10679,6 +10680,9 @@ dumpCast(Archive *fout, DumpOptions *dopt, CastInfo *cast)
1067910680 NULL , "" ,
1068010681 cast -> dobj .catId , 0 , cast -> dobj .dumpId );
1068110682
10683+ free (sourceType );
10684+ free (targetType );
10685+
1068210686 destroyPQExpBuffer (defqry );
1068310687 destroyPQExpBuffer (delqry );
1068410688 destroyPQExpBuffer (labelq );
@@ -10696,6 +10700,7 @@ dumpTransform(Archive *fout, DumpOptions *dopt, TransformInfo *transform)
1069610700 FuncInfo * fromsqlFuncInfo = NULL ;
1069710701 FuncInfo * tosqlFuncInfo = NULL ;
1069810702 char * lanname ;
10703+ char * transformType ;
1069910704
1070010705 /* Skip if not to be dumped */
1070110706 if (!transform -> dobj .dump || dopt -> dataOnly )
@@ -10723,14 +10728,13 @@ dumpTransform(Archive *fout, DumpOptions *dopt, TransformInfo *transform)
1072310728 labelq = createPQExpBuffer ();
1072410729
1072510730 lanname = get_language_name (fout , transform -> trflang );
10731+ transformType = getFormattedTypeName (fout , transform -> trftype , zeroAsNone );
1072610732
1072710733 appendPQExpBuffer (delqry , "DROP TRANSFORM FOR %s LANGUAGE %s;\n" ,
10728- getFormattedTypeName (fout , transform -> trftype , zeroAsNone ),
10729- lanname );
10734+ transformType , lanname );
1073010735
1073110736 appendPQExpBuffer (defqry , "CREATE TRANSFORM FOR %s LANGUAGE %s (" ,
10732- getFormattedTypeName (fout , transform -> trftype , zeroAsNone ),
10733- lanname );
10737+ transformType , lanname );
1073410738
1073510739 if (!transform -> trffromsql && !transform -> trftosql )
1073610740 write_msg (NULL , "WARNING: bogus transform definition, at least one of trffromsql and trftosql should be nonzero\n" );
@@ -10777,8 +10781,7 @@ dumpTransform(Archive *fout, DumpOptions *dopt, TransformInfo *transform)
1077710781 appendPQExpBuffer (defqry , ");\n" );
1077810782
1077910783 appendPQExpBuffer (labelq , "TRANSFORM FOR %s LANGUAGE %s" ,
10780- getFormattedTypeName (fout , transform -> trftype , zeroAsNone ),
10781- lanname );
10784+ transformType , lanname );
1078210785
1078310786 if (dopt -> binary_upgrade )
1078410787 binary_upgrade_extension_member (defqry , & transform -> dobj , labelq -> data );
@@ -10797,6 +10800,7 @@ dumpTransform(Archive *fout, DumpOptions *dopt, TransformInfo *transform)
1079710800 transform -> dobj .catId , 0 , transform -> dobj .dumpId );
1079810801
1079910802 free (lanname );
10803+ free (transformType );
1080010804 destroyPQExpBuffer (defqry );
1080110805 destroyPQExpBuffer (delqry );
1080210806 destroyPQExpBuffer (labelq );
0 commit comments