============================================================================
POSTGRESQL BUG REPORT TEMPLATE
============================================================================
Your name : John Garrott
Your email address : johnga@primenet.com
Category : unknown
Severity : non-critical
Summary: Insertion of line return character inconsistent.
System Configuration
--------------------
Operating System : Linux2.0.35 ELF
PostgreSQL version : 6.4.2
Compiler used : gcc 2.7.2.3
Hardware:
---------
Linux nadrek 2.0.35 #1 Fri May 21 08:48:00 PDT 1999 i586 unknown
Versions of other tools:
------------------------
GNU Make version 3.76.1
flex version 2.5.4
GNU Bison version 1.25
--------------------------------------------------------------------------
Problem Description:
--------------------
Storing text with included returns seems inconsistent. The return
character at the end of a text string must be escaped. If the lines
are double spaced, the next one cannot be or three extra lines are
generated instead of one.
Example: (Standard C conventions in character representation)
Intended:
"This is a double spaced comment.
This is the second line."
If inserted as "This is a double spaced comment.\n\nThis is the second line."
the stored result is
"This is a double spaced comment.
This is the second line."
If both returns are escaped:
"This is a double spaced comment.\\\n\\\nThis is the second line."
the stored result is
"This is a double spaced comment.
This is the second line."
Finally, if only the first return is escaped, everything is normal:
"This is a double spaced comment.\\\n\nThis is the second line."
The stored result is
"This is a double spaced comment.
This is the second line."
The field the text is stored in is a varchar(2048).
--------------------------------------------------------------------------
Test Case:
----------
--------------------------------------------------------------------------
Solution:
---------
--------------------------------------------------------------------------