diff --git a/src/backend/utils/adt/ruleutils.c b/src/backend/utils/adt/ruleutils.c index 655d3f890c62e2a7f95afa45677b0790e6433a8f..df5b08480a7f96a4700997905b66ae540ac4f174 100644 --- a/src/backend/utils/adt/ruleutils.c +++ b/src/backend/utils/adt/ruleutils.c @@ -9,7 +9,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/utils/adt/ruleutils.c,v 1.331 2010/08/12 00:40:59 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/utils/adt/ruleutils.c,v 1.332 2010/08/14 14:20:35 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -1622,8 +1622,9 @@ pg_get_serial_sequence(PG_FUNCTION_ARGS) * the specified function. * * Note: if you change the output format of this function, be careful not - * to break psql's rules (in \ef) for identifying the start of the function - * body. + * to break psql's rules (in \ef and \sf) for identifying the start of the + * function body. To wit: the function body starts on a line that begins + * with "AS ", and no preceding line will look like that. */ Datum pg_get_functiondef(PG_FUNCTION_ARGS) diff --git a/src/bin/psql/command.c b/src/bin/psql/command.c index e902f5e95c0b03a71f804ad3084d7844793b1fd1..a482010157b43d426ed451337d950dc98406f3ba 100644 --- a/src/bin/psql/command.c +++ b/src/bin/psql/command.c @@ -3,7 +3,7 @@ * * Copyright (c) 2000-2010, PostgreSQL Global Development Group * - * $PostgreSQL: pgsql/src/bin/psql/command.c,v 1.227 2010/08/14 13:59:49 tgl Exp $ + * $PostgreSQL: pgsql/src/bin/psql/command.c,v 1.228 2010/08/14 14:20:35 tgl Exp $ */ #include "postgres_fe.h" #include "command.h" @@ -611,17 +611,17 @@ exec_command(const char *cmd, /* * lineno "1" should correspond to the first line of the * function body. We expect that pg_get_functiondef() will - * emit that on a line beginning with "AS $function", and that - * there can be no such line before the real start of the - * function body. Increment lineno by the number of lines - * before that line, so that it becomes relative to the first - * line of the function definition. + * emit that on a line beginning with "AS ", and that there + * can be no such line before the real start of the function + * body. Increment lineno by the number of lines before that + * line, so that it becomes relative to the first line of the + * function definition. */ const char *lines = query_buf->data; while (*lines != '\0') { - if (strncmp(lines, "AS $function", 12) == 0) + if (strncmp(lines, "AS ", 3) == 0) break; lineno++; /* find start of next line */ @@ -1150,9 +1150,9 @@ exec_command(const char *cmd, /* * lineno "1" should correspond to the first line of the * function body. We expect that pg_get_functiondef() will - * emit that on a line beginning with "AS $function", and that - * there can be no such line before the real start of the - * function body. + * emit that on a line beginning with "AS ", and that there + * can be no such line before the real start of the function + * body. * * Note that this loop scribbles on func_buf. */ @@ -1160,7 +1160,7 @@ exec_command(const char *cmd, { char *eol; - if (in_header && strncmp(lines, "AS $function", 12) == 0) + if (in_header && strncmp(lines, "AS ", 3) == 0) in_header = false; /* increment lineno only for body's lines */ if (!in_header)