• 0
kifu21

map.c error

Question

Hi i need help on this one coz its making my server crash 

I run my server on gdb state to take a closer look which causes me to have this error

qweqwe.png

Share this post


Link to post
Share on other sites

8 answers to this question

  • 0

This function does not check whether or not map->list contains map m before using it which can cause out-of-bounds read; but something else is weird here: your y0 is overflowed and your x0 is very high. Could you please provide a full backtrace? just write "bt full" when you see the (gdb) prompt

Also it would help to know your git revision commit hash or tag

Share this post


Link to post
Share on other sites
  • 0

I tried "bt full" command and its says "No Stack"

 

and I received another one of this

qqwwe.png

Share this post


Link to post
Share on other sites
  • 0

after crash, in gdb type bt and show output.

and better copy text and not images

Share this post


Link to post
Share on other sites
  • 0

These are all the errors

 

#0  0x00000000004e3207 in bl_getall_area (type=1, m=23, x0=224, y0=28, x1=28, 
    y1=0, func=0x0) at map.c:769
        args = <error reading variable args (Attempt to dereference a generic pointer.)>
#1  0x00000000004e3a9f in map_vforeachinarea (func=0x46e870 <clif_send_sub>, 
    m=23, x0=224, y0=28, x1=28, y1=0, type=1, ap=0x7fffff3ff1d8) at map.c:1028
        returnCount = 21
        blockcount = 32756
        apcopy = <error reading variable apcopy (Attempt to dereference a generic pointer.)>
#2  0x00000000004dd026 in map_foreachinarea (func=0x17, m=23, x0=224, y0=28, 
    x1=28, y1=0, type=21) at map.c:1058
        returnCount = 21
        ap = <error reading variable ap (Attempt to dereference a generic pointer.)>
#3  0x00000000004699c1 in clif_send (buf=0x7fffff3ff370, len=9, bl=0xa050b40, 
    type=AREA) at clif.c:502
        p = 0x5b03600
        g = 0x5b03600
        bgd = 0x15
        __func__ = "clif_send"
#4  0x00000000004883df in clif_status_change_end (bl=0x17, tid=23, target=224, 
    type=28) at clif.c:18925
---Type <return> to continue, or q <return> to quit---run
        p = {PacketType = 406, index = -1, AID = 2000012, state = 0 '\000'}
#5  0x00000000005ffdf8 in status_change_end_ (bl=0xa050b40, type=SC_STONE, tid=0, file=0x0, 
    line=28) at status.c:11407
        sc = 0xd7
        sce = 0x5b036d8
        opt_flag = 0
#6  0x00000000005d62c0 in skill_unit_onout (src=0x413adcc, bl=0xa050b40, tick=5868761517)
    at skill.c:13589
        target = 0x15
        sg = 0x457fdfc
        sc = 0xa050f78
        sce = 0xe0
        type = SC_CONCENTRATION
#7  0x00000000005a319d in skill_unit_move_sub (bl=0x413adcc, ap=0x17) at skill.c:17858
        result = 21
        group = 0x457fdfc
        target = 0xa050b40
        tick = 5868761517
        flag = 2
        dissonance = 28
        __func__ = "skill_unit_move_sub"
#8  0x00000000004dd5e4 in bl_vforeach (func=0x17, blockcount=23, max=2147483647, 
    args=0x7fffff3ff558) at map.c:556
        argscopy = <error reading variable argscopy (Attempt to dereference a generic pointer.)>
        returnCount = 0
#9  0x00000000004e37c8 in map_vforeachincell (func=0x5a2e40 <skill_unit_move_sub>, m=23, x=224, 
    y=28, type=23, ap=0x7fffff3ff5a8) at map.c:1262
        returnCount = 21
        blockcount = 32754
        apcopy = <error reading variable apcopy (Attempt to dereference a generic pointer.)>
#10 0x00000000004dcdf0 in map_foreachincell (func=0x17, m=23, x=224, y=28, type=28) at map.c:1286
        returnCount = 21
---Type <return> to continue, or q <return> to quit---return 
        ap = <error reading variable ap (Attempt to dereference a generic pointer.)>
#11 0x00000000005dae57 in skill_unit_move (bl=0xa050b40, tick=5868761517, flag=224)
    at skill.c:17896
No locals.
#12 0x00000000004de287 in map_moveblock (bl=0xa050b40, x1=201, y1=182, tick=168) at map.c:348
        sc = 0xa050f78
        x0 = 201
        moveblock = 0
#13 0x000000000059bbfe in skill_unit_onplace (src=0x413adcc, bl=0xa050b40, tick=5868761517)
    at skill.c:12521
        td = 0x15
        sec = 8000
        sg = 0x457fdfc
        ss = 0x301e6b0
        sc = 0x1f40
        sce = 0xa8
        __func__ = "skill_unit_onplace"
#14 0x00000000005a304c in skill_unit_move_sub (bl=0x413adcc, ap=0x17) at skill.c:17851
        result = 21
        group = 0x457fdfc
        target = 0xa050b40
        tick = 5868761517
        flag = 3
        dissonance = 28
        __func__ = "skill_unit_move_sub"
#15 0x00000000004dd5e4 in bl_vforeach (func=0x17, blockcount=23, max=2147483647, 
    args=0x7fffff3ff858) at map.c:556
        argscopy = <error reading variable argscopy (Attempt to dereference a generic pointer.)>
        returnCount = 0
#16 0x00000000004e37c8 in map_vforeachincell (func=0x5a2e40 <skill_unit_move_sub>, m=23, x=224, 
    y=28, type=23, ap=0x7fffff3ff8a8) at map.c:1262
        returnCount = 21
---Type <return> to continue, or q <return> to quit---<return>
        blockcount = 32752
        apcopy = <error reading variable apcopy (Attempt to dereference a generic pointer.)>
#17 0x00000000004dcdf0 in map_foreachincell (func=0x17, m=23, x=224, y=28, type=28) at map.c:1286
        returnCount = 21
        ap = <error reading variable ap (Attempt to dereference a generic pointer.)>
#18 0x00000000005dad90 in skill_unit_move (bl=0xa050b40, tick=5868761517, flag=224)
    at skill.c:17896
No locals.
#19 0x00000000004de238 in map_moveblock (bl=0xa050b40, x1=201, y1=182, tick=168) at map.c:376
        sc = 0xa050f78
        x0 = 201
        moveblock = 0
#20 0x000000000059bbfe in skill_unit_onplace (src=0x413adcc, bl=0xa050b40, tick=5868761517)
    at skill.c:12521
        td = 0x15
        sec = 8000
        sg = 0x457fdfc
        ss = 0x301e6b0
        sc = 0x1f40
        sce = 0xa8
        __func__ = "skill_unit_onplace"
#21 0x00000000005a304c in skill_unit_move_sub (bl=0x413adcc, ap=0x17) at skill.c:17851
        result = 21
        group = 0x457fdfc
        target = 0xa050b40
        tick = 5868761517
        flag = 3
        dissonance = 28
        __func__ = "skill_unit_move_sub"
#22 0x00000000004dd5e4 in bl_vforeach (func=0x17, blockcount=23, max=2147483647, 
    args=0x7fffff3ffb58) at map.c:556
        argscopy = <error reading variable argscopy (Attempt to dereference a generic pointer.)>
---Type <return> to continue, or q <return> to quit---uit
        returnCount = 0
#23 0x00000000004e37c8 in map_vforeachincell (func=0x5a2e40 <skill_unit_move_sub>, m=23, x=224, 
    y=28, type=23, ap=0x7fffff3ffba8) at map.c:1262
        returnCount = 21
        blockcount = 32750
        apcopy = <error reading variable apcopy (Attempt to dereference a generic pointer.)>
#24 0x00000000004dcdf0 in map_foreachincell (func=0x17, m=23, x=224, y=28, type=28) at map.c:1286
        returnCount = 21
        ap = <error reading variable ap (Attempt to dereference a generic pointer.)>
#25 0x00000000005dad90 in skill_unit_move (bl=0xa050b40, tick=5868761517, flag=224)
    at skill.c:17896
No locals.
#26 0x00000000004de238 in map_moveblock (bl=0xa050b40, x1=201, y1=182, tick=168) at map.c:376
        sc = 0xa050f78
        x0 = 201
        moveblock = 0
#27 0x000000000059bbfe in skill_unit_onplace (src=0x413adcc, bl=0xa050b40, tick=5868761517)
    at skill.c:12521
        td = 0x15
        sec = 8000
        sg = 0x457fdfc
        ss = 0x301e6b0
        sc = 0x1f40
        sce = 0xa8
        __func__ = "skill_unit_onplace"
#28 0x00000000005a304c in skill_unit_move_sub (bl=0x413adcc, ap=0x17) at skill.c:17851
        result = 21
        group = 0x457fdfc
        target = 0xa050b40
        tick = 5868761517
        flag = 3
        dissonance = 28
 

Share this post


Link to post
Share on other sites
  • 0

you have any custom changes? because look like error lines not present in latest hercules code

Share this post


Link to post
Share on other sites
  • 0

Posted (edited)

@4144

 

Well I believe that the error came from the spider web skill its about making it like a trap skill not on enemy placing skill

Hope i can get some help fixing with latest hercules codes on this

BUG Error.txt

Edited by kifu21

Share this post


Link to post
Share on other sites
  • 0

Your stack trace show what you not using latest hercules code. If you using old hercules version, you should say commit id.

If you using custom modifications in code, you should check same error on hercules without your custom modifications. And show crash stack

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now