http://bugs.grommit.com/show_bug.cgi?id=385

           Summary: checks need to handle negative return code from
                    spawnvp()
           Product: SCM Migration
           Version: unspecified
          Platform: SPARC (32bit+64bit)
        OS/Version: Solaris 11/Nevada
            Status: NEW
          Severity: minor
          Priority: P3
         Component: cstyle
        AssignedTo: scm-migration-dev at opensolaris.org
        ReportedBy: mike.kupfer at sun.com


The cstyle and jstyle checks work by invoking an external
program/script using os.spawnvp(), and passing the return value from
spawnvp() back as the exit status.

spawnvp() can return a negative number (in case of a signal), but all
our other code that deals with exit codes assumes non-negative
numbers.

Rich says we're likely to change this code as part of the gate-side
hooks work.  But if we still use spawnvp(), we should ensure that
negative return values get mapped to a positive integer (probably 1).

This is P3 for 2 reasons.  First, if this were C it would be a lint
error.  Second, negative values are likely to cause problems elsewhere
in Mercurial or the Python runtime.  If we're lucky, the user will get
an easy-to-debug Python backtrace.  If we're unlucky, the user will
get some unexpected behavior with no obvious reason why.  Either way
it's time-consuming for us to deal with.


-- 
Configure bugmail: http://bugs.grommit.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.

Reply via email to