Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
TASTE
uPython-mirror
Commits
fa6f0506
Commit
fa6f0506
authored
Apr 22, 2014
by
Paul Sokolovsky
Browse files
unix: Workaround MP_OBJ_NEW_SMALL_INT() 64-bit issues.
parent
5d3a8301
Changes
3
Hide whitespace changes
Inline
Side-by-side
unix/file.c
View file @
fa6f0506
...
...
@@ -106,7 +106,7 @@ STATIC mp_obj_t fdfile_make_new(mp_obj_t type_in, uint n_args, uint n_kw, const
int
fd
=
open
(
fname
,
mode
,
0644
);
if
(
fd
==
-
1
)
{
nlr_raise
(
mp_obj_new_exception_arg1
(
&
mp_type_OSError
,
MP_OBJ_NEW_SMALL_INT
(
errno
)));
nlr_raise
(
mp_obj_new_exception_arg1
(
&
mp_type_OSError
,
MP_OBJ_NEW_SMALL_INT
(
(
machine_int_t
)
errno
)));
}
return
fdfile_new
(
fd
);
}
...
...
unix/modffi.c
View file @
fa6f0506
...
...
@@ -145,7 +145,7 @@ STATIC mp_obj_t ffimod_func(uint n_args, const mp_obj_t *args) {
void
*
sym
=
dlsym
(
self
->
handle
,
symname
);
if
(
sym
==
NULL
)
{
nlr_raise
(
mp_obj_new_exception_arg1
(
&
mp_type_OSError
,
MP_OBJ_NEW_SMALL_INT
(
errno
)));
nlr_raise
(
mp_obj_new_exception_arg1
(
&
mp_type_OSError
,
MP_OBJ_NEW_SMALL_INT
(
(
machine_int_t
)
errno
)));
}
int
nparams
=
MP_OBJ_SMALL_INT_VALUE
(
mp_obj_len_maybe
(
args
[
3
]));
mp_obj_ffifunc_t
*
o
=
m_new_obj_var
(
mp_obj_ffifunc_t
,
ffi_type
*
,
nparams
);
...
...
@@ -219,7 +219,7 @@ STATIC mp_obj_t ffimod_var(mp_obj_t self_in, mp_obj_t vartype_in, mp_obj_t symna
void
*
sym
=
dlsym
(
self
->
handle
,
symname
);
if
(
sym
==
NULL
)
{
nlr_raise
(
mp_obj_new_exception_arg1
(
&
mp_type_OSError
,
MP_OBJ_NEW_SMALL_INT
(
errno
)));
nlr_raise
(
mp_obj_new_exception_arg1
(
&
mp_type_OSError
,
MP_OBJ_NEW_SMALL_INT
(
(
machine_int_t
)
errno
)));
}
mp_obj_ffivar_t
*
o
=
m_new_obj
(
mp_obj_ffivar_t
);
o
->
base
.
type
=
&
ffivar_type
;
...
...
@@ -235,7 +235,7 @@ STATIC mp_obj_t ffimod_make_new(mp_obj_t type_in, uint n_args, uint n_kw, const
void
*
mod
=
dlopen
(
fname
,
RTLD_NOW
|
RTLD_LOCAL
);
if
(
mod
==
NULL
)
{
nlr_raise
(
mp_obj_new_exception_arg1
(
&
mp_type_OSError
,
MP_OBJ_NEW_SMALL_INT
(
errno
)));
nlr_raise
(
mp_obj_new_exception_arg1
(
&
mp_type_OSError
,
MP_OBJ_NEW_SMALL_INT
(
(
machine_int_t
)
errno
)));
}
mp_obj_ffimod_t
*
o
=
m_new_obj
(
mp_obj_ffimod_t
);
o
->
base
.
type
=
type_in
;
...
...
unix/modsocket.c
View file @
fa6f0506
...
...
@@ -33,7 +33,7 @@ STATIC const mp_obj_type_t microsocket_type;
// Helper functions
#define RAISE_ERRNO(err_flag, error_val) \
{ if (err_flag == -1) \
{ nlr_raise(mp_obj_new_exception_arg1(&mp_type_OSError, MP_OBJ_NEW_SMALL_INT(error_val))); } }
{ nlr_raise(mp_obj_new_exception_arg1(&mp_type_OSError, MP_OBJ_NEW_SMALL_INT(
(machine_int_t)
error_val))); } }
STATIC
mp_obj_socket_t
*
socket_new
(
int
fd
)
{
mp_obj_socket_t
*
o
=
m_new_obj
(
mp_obj_socket_t
);
...
...
@@ -283,7 +283,7 @@ STATIC mp_obj_t mod_socket_gethostbyname(mp_obj_t arg) {
struct
hostent
*
h
=
gethostbyname
(
s
);
if
(
h
==
NULL
)
{
// CPython: socket.herror
nlr_raise
(
mp_obj_new_exception_arg1
(
&
mp_type_OSError
,
MP_OBJ_NEW_SMALL_INT
(
h_errno
)));
nlr_raise
(
mp_obj_new_exception_arg1
(
&
mp_type_OSError
,
MP_OBJ_NEW_SMALL_INT
(
(
machine_int_t
)
h_errno
)));
}
assert
(
h
->
h_length
==
4
);
return
mp_obj_new_int
(
*
(
int
*
)
*
h
->
h_addr_list
);
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment