postgres.git / summary / log / commit / refs

commit    0fc32c00d74404a9a535e0e1b8d9437dfd8075db
Author:   Robert Haas <rhaas@postgresql.org>
Date:     Wed Jul 04 21:19:23 2012 +0000

    Fix sample INSTR function to return 0 if third arg is 0.
    
    Albe Laurenz, per a report by Greg Smith that our sample function
    doesn't quite match Oracle's behavior.


doc/src/sgml/plpgsql.sgml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/doc/src/sgml/plpgsql.sgml b/doc/src/sgml/plpgsql.sgml index ba2c57b6871..4840f6ea9c6 100644 --- a/doc/src/sgml/plpgsql.sgml +++ b/doc/src/sgml/plpgsql.sgml @@ -5115,7 +5115,7 @@ BEGIN ELSE RETURN pos + beg_index - 1; END IF; - ELSE + ELSIF beg_index &lt; 0 THEN ss_length := char_length(string_to_search); length := char_length(string); beg := length + beg_index - ss_length + 2; @@ -5131,6 +5131,8 @@ BEGIN beg := beg - 1; END LOOP; + RETURN 0; + ELSE RETURN 0; END IF; END; @@ -5170,7 +5172,7 @@ BEGIN ELSE RETURN beg; END IF; - ELSE + ELSIF beg_index &lt; 0 THEN ss_length := char_length(string_to_search); length := char_length(string); beg := length + beg_index - ss_length + 2; @@ -5190,6 +5192,8 @@ BEGIN beg := beg - 1; END LOOP; + RETURN 0; + ELSE RETURN 0; END IF; END; [parent: 72dd6291f216]