Emmanuel wrote: > MRAB wrote : >> Emmanuel wrote: >>> I'm using Python 2.6 and the new subprocess module to get the exit >>> value of an external executable. It appears the return value given by >>> wait() or poll() operations is masked under Unix: I only get the >>> lower 8 bits. So an exit value of 0x0402 in the C program will be >>> seen as 0x02 in Python. And this does not happen on Windows... Any >>> idea why that is ? >>> >> I believe that in Unix the exit code is indeed limited to 8 bits. > Looks like you're right but the info is difficult to find since it is > implementation dependent. I finally found it on > http://en.wikipedia.org/wiki/Exit_status. This is very confusing because > the parameter type of the exit function is an int ?!
Yes, but the parameter type is a superset of the function's domain. That's not so unusual - consider math.sqrt(), for example. Its parameter type is float, but what happens when you call math.float(-3.5)? regards Steve -- Steve Holden +1 571 484 6266 +1 800 494 3119 PyCon is coming! Atlanta, Feb 2010 http://us.pycon.org/ Holden Web LLC http://www.holdenweb.com/ UPCOMING EVENTS: http://holdenweb.eventbrite.com/ -- http://mail.python.org/mailman/listinfo/python-list