• Alvaro Herrera's avatar
    Fix crash in error report of invalid tuple lock · 88c55668
    Alvaro Herrera authored
    My tweak of these error messages in commit c359a1b0 contained the
    thinko that a query would always have rowMarks set for a query
    containing a locking clause.  Not so: when declaring a cursor, for
    instance, rowMarks isn't set at the point we're checking, so we'd be
    dereferencing a NULL pointer.
    
    The fix is to pass the lock strength to the function raising the error,
    instead of trying to reverse-engineer it.  The result not only is more
    robust, but it also seems cleaner overall.
    
    Per report from Robert Haas.
    88c55668
planner.c 112 KB