Summary: | postgresql.init doesn't return immediately if failed to start | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Sok Ann Yap <sokann> |
Component: | New packages | Assignee: | PgSQL Bugs <pgsql-bugs> |
Status: | RESOLVED FIXED | ||
Severity: | minor | CC: | desultory, kfm |
Priority: | High | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
Sok Ann Yap
2010-03-18 11:23:32 UTC
Provided that the test returns true, and the eend $retval command is executed successfully, then return $retval will be executed. Think of it more as how you string commands together on the command line: user $ run_this && then_run_this && finally_run_this If 'run_this' finishes successfully, then 'then_run_this' will be executed. If that finishes successfully, then 'finally_run_this' will be executed. But, if any of those commands fail, then the successive command(s) will not be executed. What you (and the maintainer) didn't realize is that "eend $retval" will return whatever value $retval is. Thus, eend 2 && echo "this will never be executed" Marking INVALID, per comment #1. Reopening, as the reporter was right after all. Moral being let things play out more before acting based on irc. (In reply to comment #2) > What you (and the maintainer) didn't realize is that "eend $retval" will return > whatever value $retval is. Thus, > > eend 2 && echo "this will never be executed" > Okay, so I was a bit hasty. (And the lack of easy to find documentation on eend didn't help either.) Edit that line so it looks like so instead: if [ $retval -ne 0 ] ; then eend $retval return $retval fi See if that fixes the issue. Addressed in bug #311047 Committed. |