• Tom Lane's avatar
    Fix latent crash in do_text_output_multiline(). · 8a4930e3
    Tom Lane authored
    do_text_output_multiline() would fail (typically with a null pointer
    dereference crash) if its input string did not end with a newline.  Such
    cases do not arise in our current sources; but it certainly could happen
    in future, or in extension code's usage of the function, so we should fix
    it.  To fix, replace "eol += len" with "eol = text + len".
    
    While at it, make two cosmetic improvements: mark the input string const,
    and rename the argument from "text" to "txt" to dodge pgindent strangeness
    (since "text" is a typedef name).
    
    Even though this problem is only latent at present, it seems like a good
    idea to back-patch the fix, since it's a very simple/safe patch and it's
    not out of the realm of possibility that we might in future back-patch
    something that expects sane behavior from do_text_output_multiline().
    
    Per report from Hao Lee.
    
    Report: <CAGoxFiFPAGyPAJLcFxTB5cGhTW2yOVBDYeqDugYwV4dEd1L_Ag@mail.gmail.com>
    8a4930e3
execTuples.c 38.3 KB