Subversion Repositories Kolibri OS

Rev

Rev 9036 | Rev 9045 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 9036 Rev 9038
Line 3... Line 3...
3
;; Copyright (C) KolibriOS team 2004-2021. All rights reserved. ;;
3
;; Copyright (C) KolibriOS team 2004-2021. All rights reserved. ;;
4
;;  Distributed under terms of the GNU General Public License.  ;;
4
;;  Distributed under terms of the GNU General Public License.  ;;
5
;;                                                              ;;
5
;;                                                              ;;
6
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
6
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Line 7... Line 7...
7
 
7
 
Line 8... Line 8...
8
$Revision: 9036 $
8
$Revision: 9038 $
Line 9... Line 9...
9
 
9
 
Line 113... Line 113...
113
 
113
 
114
        mov     [file_base], eax
114
        mov     [file_base], eax
115
        mov     [file_size], ebx
115
        mov     [file_size], ebx
116
        lea     ebx, [hdr_cmdline]
116
        lea     ebx, [hdr_cmdline]
117
        call    test_app_header  ; fill our app header data locals with values from header of given program (if its correct)
117
        call    test_app_header  ; fill our app header data locals with values from header of given program (if its correct)
118
        mov     esi, -ERROR_NOT_A_EXECUTABLE
118
        mov     esi, -TASKMAN_ERROR_NOT_A_EXECUTABLE
119
        test    eax, eax
119
        test    eax, eax
Line 120... Line 120...
120
        jz      .err_hdr
120
        jz      .err_hdr
121
 
121
 
122
        call    lock_application_table
122
        call    lock_application_table
123
        call    alloc_thread_slot   ; create a slot for new thread
123
        call    alloc_thread_slot   ; create a slot for new thread
124
        mov     esi, -ERROR_TOO_MANY_PROCESSES
124
        mov     esi, -TASKMAN_ERROR_TOO_MANY_PROCESSES
Line 125... Line 125...
125
        test    eax, eax
125
        test    eax, eax
126
        jz      .err_0
126
        jz      .err_0
Line 161... Line 161...
161
        lea     ebx, [eax+1]
161
        lea     ebx, [eax+1]
162
        add     [hdr_emem], ebx
162
        add     [hdr_emem], ebx
163
@@:
163
@@:
164
        mov     [cmdline_size], eax
164
        mov     [cmdline_size], eax
165
        stdcall create_process, [hdr_emem]  ; create a new process
165
        stdcall create_process, [hdr_emem]  ; create a new process
166
        mov     esi, -ERROR_OUT_OF_MEMORY
166
        mov     esi, -TASKMAN_ERROR_OUT_OF_MEMORY
167
        test    eax, eax
167
        test    eax, eax
168
        jz      .err_hdr
168
        jz      .err_hdr
Line 169... Line 169...
169
 
169
 
170
; add new process to the list
170
; add new process to the list