|
|
||
|
|
List, I ran into some issues testing for os.execute() results. So I wrote some test code and executed it on Windows and Ubuntu 10. The code is run twice, once running os.execute, once with penlights execute method. The results (see below) are what I expected for Windows. But on Ubuntu, I can’t explain it. The exitcodes are supposed to be between 0 and 255. So the os.exit(-5) and os.exit(400) are out of range, but the valid test; os.exit(25) also gives me a return value in os.execute() of 6400. The windows one (further down below) just handles any numeric argument, also outside the 0-255 range. Any clues to why this is happening? Regards Thijs The Ubuntu output: thijs@ubuntu:~/exit_test$ lua exit_test.lua ====> PLAIN <==== testing shell command (always success) (dir) #:1 1: 0 testing non-existing command (always failure) (this_obviously_does_not_exist) #:1 1: 32512 testing os.exit(25) exitcode (lua _exitcode.lua 25) #:1 1: 6400 testing os.exit(-5) exitcode (lua _exitcode.lua -5) #:1 1: 64256 testing os.exit(400) exitcode (lua _exitcode.lua 400) #:1 1: 36864 testing erroneous script (lua _exiterror.lua) #:1 1: 256 ====> PENLIGHT <==== testing shell command (always success) (dir) #:2 1: true 2: 0 testing non-existing command (always failure) (this_obviously_does_not_exist) #:2 1: false 2: 32512 testing os.exit(25) exitcode (lua _exitcode.lua 25) #:2 1: false 2: 6400 testing os.exit(-5) exitcode (lua _exitcode.lua -5) #:2 1: false 2: 64256 testing os.exit(400) exitcode (lua _exitcode.lua 400) #:2 1: false 2: 36864 testing erroneous script (lua _exiterror.lua) #:2 1: false 2: 256 thijs@ubuntu:~/exit_test$ And on Windows: C:\Users\Thijs\Dropbox\Lua projects\exit_test>exit_test.lua ====> PLAIN <==== testing shell command (always success) (dir) #:1 1: 0 testing non-existing command (always failure) (this_obviously_does_not_exist) #:1 1: 1 testing os.exit(25) exitcode (lua _exitcode.lua 25) #:1 1: 25 testing os.exit(-5) exitcode (lua _exitcode.lua -5) #:1 1: -5 testing os.exit(400) exitcode (lua _exitcode.lua 400) #:1 1: 400 testing erroneous script (lua _exiterror.lua) #:1 1: 1 ====> PENLIGHT <==== testing shell command (always success) (dir) #:2 1: true 2: 0 testing non-existing command (always failure) (this_obviously_does_not_exist) #:2 1: false 2: 1 testing os.exit(25) exitcode (lua _exitcode.lua 25) #:2 1: false 2: 25 testing os.exit(-5) exitcode (lua _exitcode.lua -5) #:2 1: false 2: -5 testing os.exit(400) exitcode (lua _exitcode.lua 400) #:2 1: false 2: 400 testing erroneous script (lua _exiterror.lua) #:2 1: false 2: 1 C:\Users\Thijs\Dropbox\Lua projects\exit_test> |