Fresh IDE . Check-in [c29eda9db2]
Not logged in

This repository is a mirror!

The original is located on: https://fresh.flatassembler.net/fossil/repo/fresh
If you want to follow the project, please update your remote-url

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Process properly the error code of sys_personality on startup.
Timelines: family | ancestors | descendants | both | FreshLibDev
Files: files | file ages | folders
SHA1:c29eda9db24a490bd1ececc75bc1c635d88fc70c
User & Date: johnfound 2018-12-03 19:17:41
Context
2018-12-03
19:19
Fixed wrong constant. check-in: 68c9edff7c user: johnfound tags: FreshLibDev
19:17
Process properly the error code of sys_personality on startup. check-in: c29eda9db2 user: johnfound tags: FreshLibDev
2018-11-11
19:27
Fixed bug in the MiniMag parser. check-in: 552661a932 user: johnfound tags: FreshLibDev
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to freshlib/system/Linux/process.asm.

38
39
40
41
42
43
44
45
46
47





48
49
50
51
52
53
54
        jnz     .finish                         ; everything is OK.

; set the needed personality

        DebugMsg "Switch to 3GB address space."

        mov     eax, sys_personality
        mov     ebx, PER_LINUX32_3GB
        int     $80






; and restart the process

        mov     eax, [esp+4]          ; argument count
        mov     ebx, [esp+8]          ; the first argument is the name of the program.
        lea     ecx, [esp+8]          ; the arguments list.
        lea     edx, [ecx+4*eax+4]    ; the environment list.








|


>
>
>
>
>







38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
        jnz     .finish                         ; everything is OK.

; set the needed personality

        DebugMsg "Switch to 3GB address space."

        mov     eax, sys_personality
        mov     ebx, PER_LINUX32_3GB or PER_LINUX_32BIT
        int     $80

        OutputValue "sys_personality return EAX:", eax, 10, -1

        test    eax, eax
        js      .finish         ; error set personality; try this way...???

; and restart the process

        mov     eax, [esp+4]          ; argument count
        mov     ebx, [esp+8]          ; the first argument is the name of the program.
        lea     ecx, [esp+8]          ; the arguments list.
        lea     edx, [ecx+4*eax+4]    ; the environment list.