@@ -16,17 +16,13 @@ pub fn os_open(vm: &mut VirtualMachine, args: PyFuncArgs) -> PyResult {
16
16
arg_check ! (
17
17
vm,
18
18
args,
19
- required = [ ( name, Some ( vm. ctx. str_type( ) ) ) ] ,
20
- optional = [ ( mode, Some ( vm. ctx. int_type( ) ) ) ]
19
+ required = [
20
+ ( name, Some ( vm. ctx. str_type( ) ) ) ,
21
+ ( mode, Some ( vm. ctx. int_type( ) ) )
22
+ ]
21
23
) ;
22
24
23
- let mode = if let Some ( m) = mode {
24
- objint:: get_value ( m)
25
- } else {
26
- 0 . to_bigint ( ) . unwrap ( )
27
- } ;
28
-
29
- let handle = match mode. to_u16 ( ) . unwrap ( ) {
25
+ let handle = match objint:: get_value ( mode) . to_u16 ( ) . unwrap ( ) {
30
26
0 => OpenOptions :: new ( ) . read ( true ) . open ( objstr:: get_value ( & name) ) ,
31
27
1 => OpenOptions :: new ( )
32
28
. write ( true )
@@ -53,7 +49,7 @@ pub fn mk_module(ctx: &PyContext) -> PyObjectRef {
53
49
ctx. set_attr ( & py_mod, "O_RDONLY" , ctx. new_int ( 0 . to_bigint ( ) . unwrap ( ) ) ) ;
54
50
ctx. set_attr ( & py_mod, "O_WRONLY" , ctx. new_int ( 1 . to_bigint ( ) . unwrap ( ) ) ) ;
55
51
ctx. set_attr ( & py_mod, "O_RDWR" , ctx. new_int ( 2 . to_bigint ( ) . unwrap ( ) ) ) ;
56
- ctx. set_attr ( & py_mod, "O_NONBLOCK" , ctx. new_int ( 3 . to_bigint ( ) . unwrap ( ) ) ) ;
52
+ ctx. set_attr ( & py_mod, "O_NONBLOCK" , ctx. new_int ( 4 . to_bigint ( ) . unwrap ( ) ) ) ;
57
53
ctx. set_attr ( & py_mod, "O_APPEND" , ctx. new_int ( 8 . to_bigint ( ) . unwrap ( ) ) ) ;
58
54
ctx. set_attr ( & py_mod, "O_CREAT" , ctx. new_int ( 512 . to_bigint ( ) . unwrap ( ) ) ) ;
59
55
py_mod
0 commit comments