'info3ds' load library in sub folder '../../lib/'

git-svn-id: svn://kolibrios.org@6245 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
IgorA
2016-02-18 13:08:33 +00:00
parent 50e97c60fa
commit 4973638f8d
3 changed files with 41 additions and 19 deletions
@@ -117,6 +117,8 @@ local lp1
local lp2
local lp3
local lp4
local lp5
local lp6
local file_name
library_fun_memory_alloc equ 0 ;­¥ ¨á¯®«ì§®¢ âì ¢ ¬ ªà®á å ¯à®¢¥àªã ­  ä㭪樨 'lib_init'
@@ -168,6 +170,21 @@ align 4
test esi,esi
jz .str_lp4
;¯à®¢¥àª  ®â­®á¨â¥«ì­ëå ¯ã⥩ c ¤¢ã¬ï â®çª ¬¨ '../'
cmp word[esi],'..'
jne .lp3
dec edi ;¤«ï ¯¥à¥å®¤  ­  '/'
.lp6:
add esi,3 ;¯à®¯ã᪠¥¬ ®¤­® ¯®¤­ï⨥ '../'
.lp5:
dec edi ;¨¤¥¬ ¯® ¯ ¯ª ¬
cmp byte[edi],'/'
jnz .lp5
cmp word[esi],'..'
je .lp6
inc edi ;¤«ï ¯¥à¥å®¤  ­  '/'
;ª®¯¨à®¢ ­¨¥ ®â­®á¨â¥«ì­®£® ¯ãâ¨
align 4
.lp3:
lodsb
@@ -183,7 +200,7 @@ align 4
stosb
test eax,eax
jnz .lp4
;---------------------------------------------------------------------
;---------------------------------------------------------------------
ret
}
@@ -439,15 +456,16 @@ exit_lp2:
macro copy_path lib_name,dir_path,lib_path,point_dir_name
{
pushad ;save all registers
push dword lib_name
push dword dir_path
push dword lib_path
push dword point_dir_name
call @copy_path
pushad ;save all registers
push dword lib_name
push dword dir_path
push dword lib_path
push dword point_dir_name
call @copy_path
add esp,16
popad ;restore all registers
add esp,16
;notify_window_run lib_path ;unblok for test load path
popad ;restore all registers
}
; £®â®¢¨¬ ⥪áâ ¤«ï ¯®ª §  ç¥à¥§ @notify: