got the ffi module to work in the basics at least
This commit is contained in:
parent
8303b48fd1
commit
7d2a0ed484
@ -2948,6 +2948,17 @@ HAWK_EXPORT hawk_val_t* hawk_rtx_makembsvalwithucs (
|
||||
const hawk_ucs_t* ucs
|
||||
);
|
||||
|
||||
HAWK_EXPORT hawk_val_t* hawk_rtx_makembsvalwithbcstr (
|
||||
hawk_rtx_t* rtx,
|
||||
const hawk_bch_t* bcs
|
||||
);
|
||||
|
||||
HAWK_EXPORT hawk_val_t* hawk_rtx_makembsvalwithucstr (
|
||||
hawk_rtx_t* rtx,
|
||||
const hawk_uch_t* ucs
|
||||
);
|
||||
|
||||
|
||||
HAWK_EXPORT hawk_val_t* hawk_rtx_makembsvalwithuchars2 (
|
||||
hawk_rtx_t* rtx,
|
||||
const hawk_uch_t* ucs1,
|
||||
|
@ -354,8 +354,7 @@ void* hawk_stdmodopen (hawk_t* hawk, const hawk_mod_spec_t* spec)
|
||||
|
||||
lt_dladvise_destroy (&adv);
|
||||
|
||||
HAWK_MMGR_FREE (hawk_getmmgr(hawk), modpath);
|
||||
|
||||
if (modpath) hawk_freemem(hawk, modpath);
|
||||
return h;
|
||||
|
||||
#elif defined(_WIN32)
|
||||
@ -386,7 +385,7 @@ void* hawk_stdmodopen (hawk_t* hawk, const hawk_mod_spec_t* spec)
|
||||
modpath = hawk_dupoocstrarr(hawk, tmp, HAWK_NULL);
|
||||
if (!modpath) return HAWK_NULL;
|
||||
|
||||
h = LoadLibrary (modpath);
|
||||
h = LoadLibrary(modpath);
|
||||
if (!h) hawk_seterrnum (hawk, HAWK_NULL, hawk_syserr_to_errnum(GetLastError());
|
||||
|
||||
hawk_freemem (hawk, modpath);
|
||||
@ -427,7 +426,7 @@ void* hawk_stdmodopen (hawk_t* hawk, const hawk_mod_spec_t* spec)
|
||||
|
||||
/* DosLoadModule() seems to have severe limitation on
|
||||
* the file name it can load (max-8-letters.xxx) */
|
||||
rc = DosLoadModule (errbuf, HAWK_COUNTOF(errbuf) - 1, modpath, &h);
|
||||
rc = DosLoadModule(errbuf, HAWK_COUNTOF(errbuf) - 1, modpath, &h);
|
||||
if (rc != NO_ERROR)
|
||||
{
|
||||
h = HAWK_NULL;
|
||||
|
@ -908,6 +908,16 @@ hawk_val_t* hawk_rtx_makembsvalwithucs (hawk_rtx_t* rtx, const hawk_ucs_t* ucs)
|
||||
return hawk_rtx_makembsvalwithuchars(rtx, ucs->ptr, ucs->len);
|
||||
}
|
||||
|
||||
|
||||
hawk_val_t* hawk_rtx_makembsvalwithbcstr (hawk_rtx_t* rtx, const hawk_bch_t* bcs)
|
||||
{
|
||||
return make_mbs_val(rtx, bcs, hawk_count_bcstr(bcs), HAWK_NULL, 0);
|
||||
}
|
||||
|
||||
hawk_val_t* hawk_rtx_makembsvalwithucstr (hawk_rtx_t* rtx, const hawk_uch_t* ucs)
|
||||
{
|
||||
return hawk_rtx_makembsvalwithuchars(rtx, ucs, hawk_count_ucstr(ucs));
|
||||
}
|
||||
/* --------------------------------------------------------------------- */
|
||||
|
||||
hawk_val_t* hawk_rtx_makembsvalwithuchars2 (hawk_rtx_t* rtx, const hawk_uch_t* ucs1, hawk_oow_t len1, const hawk_uch_t* ucs2, hawk_oow_t len2)
|
||||
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user