how to write a conclusion to a research paper writing a 5 paragraph essay how to write essay sample research paper writing tools

Crash on Look .anything

  • Enceladus
  • Topic Author
  • Away
  • Fresh Boarder
  • Fresh Boarder
More
3 weeks 1 day ago - 3 weeks 1 day ago #8774 by Enceladus
Crash on Look .anything was created by Enceladus
Getting a weird crash on stock tbamud2020 when I do look .obj or look <any number>.obj. Here's the debug from LLDB
2020-06-15 01:22:48.120251+0800 circle[1517:55047] detected source and destination buffer overlap
Process 1517 stopped
* thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGABRT
    frame #0: 0x00007fff6dceeb66 libsystem_kernel.dylib`__pthread_kill + 10
libsystem_kernel.dylib`__pthread_kill:
->  0x7fff6dceeb66 <+10>: jae    0x7fff6dceeb70            ; <+20>
    0x7fff6dceeb68 <+12>: movq   %rax, %rdi
    0x7fff6dceeb6b <+15>: jmp    0x7fff6dce5ae5            ; cerror_nocancel
    0x7fff6dceeb70 <+20>: retq   
Target 0: (circle) stopped.
(lldb) bt
* thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGABRT
  * frame #0: 0x00007fff6dceeb66 libsystem_kernel.dylib`__pthread_kill + 10
    frame #1: 0x00007fff6deb9080 libsystem_pthread.dylib`pthread_kill + 333
    frame #2: 0x00007fff6dc4a1ae libsystem_c.dylib`abort + 127
    frame #3: 0x00007fff6dc4a321 libsystem_c.dylib`abort_report_np + 177
    frame #4: 0x00007fff6dc6ebf5 libsystem_c.dylib`__chk_fail + 48
    frame #5: 0x00007fff6dc6ec05 libsystem_c.dylib`__chk_fail_overlap + 16
    frame #6: 0x00007fff6dc6ec27 libsystem_c.dylib`__chk_overlap + 34
    frame #7: 0x00007fff6dc6ee01 libsystem_c.dylib`__strcpy_chk + 64
    frame #8: 0x0000000100090bfe circle`generic_find [inlined] get_number at handler.c:602 [opt]
    frame #9: 0x0000000100090b9d circle`generic_find(arg=<unavailable>, bitvector=45, ch=0x00000001038b5690, tar_ch=0x00007ffeefbf2b80, tar_obj=0x00007ffeefbf2b68) at handler.c:1359 [opt]
    frame #10: 0x000000010000744a circle`look_at_target(ch=0x00000001038b5690, arg=<unavailable>) at act.informative.c:718 [opt]
    frame #11: 0x00000001000071e9 circle`do_look(ch=0x00000001038b5690, argument=" 2.board", cmd=<unavailable>, subcmd=0) at act.informative.c:0 [opt]
    frame #12: 0x00000001000a0707 circle`command_interpreter(ch=0x00000001038b5690, argument=<unavailable>) at interpreter.c:586 [opt]
    frame #13: 0x000000010004e20c circle`game_loop(local_mother_desc=3) at comm.c:904 [opt]
    frame #14: 0x000000010004c383 circle`main [inlined] init_game(local_port=<unavailable>) at comm.c:541 [opt]
    frame #15: 0x000000010004bf54 circle`main(argc=<unavailable>, argv=<unavailable>) at comm.c:352 [opt]
    frame #16: 0x00007fff6db9e015 libdyld.dylib`start + 1
(lldb) 
Last edit: 3 weeks 1 day ago by Enceladus.

Please Log in or Create an account to join the conversation.

More
2 weeks 6 days ago #8776 by WhiskyTest
Replied by WhiskyTest on topic Crash on Look .anything
I wasn't able to reproduce this from Cygwin on Windows

Any other info you can provide?

Please Log in or Create an account to join the conversation.

More
2 weeks 5 days ago #8777 by Rumble
Replied by Rumble on topic Crash on Look .anything
I was unable to reproduce as well. I noticed it crashed for you on look 2.board, possibly the board code/SPEC. Please provide more details and another example crash.

Rumble
The Builder Academy
tbamud.com 9091
This email address is being protected from spambots. You need JavaScript enabled to view it.

Please Log in or Create an account to join the conversation.

  • Enceladus
  • Topic Author
  • Away
  • Fresh Boarder
  • Fresh Boarder
More
2 weeks 5 days ago #8778 by Enceladus
Replied by Enceladus on topic Crash on Look .anything
Compiled on MacOS HighSierra

Other commands that will crash it also involve the '.' such as 'read 2.mail' , 'exa 2.obj' , 'look 2.mob' , 'get all 2.bag' , but will NOT crash on 'get 2.bag'.

I went back and compiled stock CircleMUD 3.1 and also get the crash using the above commands as well.

Please Log in or Create an account to join the conversation.

  • Enceladus
  • Topic Author
  • Away
  • Fresh Boarder
  • Fresh Boarder
More
2 weeks 5 days ago #8779 by Enceladus
Replied by Enceladus on topic Crash on Look .anything
Here is the crash log for the command 'get all 2.bag' :
(lldb) bt
* thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGABRT
  * frame #0: 0x00007fff6dceeb66 libsystem_kernel.dylib`__pthread_kill + 10
    frame #1: 0x00007fff6deb9080 libsystem_pthread.dylib`pthread_kill + 333
    frame #2: 0x00007fff6dc4a1ae libsystem_c.dylib`abort + 127
    frame #3: 0x00007fff6dc4a321 libsystem_c.dylib`abort_report_np + 177
    frame #4: 0x00007fff6dc6ebf5 libsystem_c.dylib`__chk_fail + 48
    frame #5: 0x00007fff6dc6ec05 libsystem_c.dylib`__chk_fail_overlap + 16
    frame #6: 0x00007fff6dc6ec27 libsystem_c.dylib`__chk_overlap + 34
    frame #7: 0x00007fff6dc6ee01 libsystem_c.dylib`__strcpy_chk + 64
    frame #8: 0x0000000100090bfe circle`generic_find [inlined] get_number at handler.c:602 [opt]
    frame #9: 0x0000000100090b9d circle`generic_find(arg=<unavailable>, bitvector=44, ch=0x0000000103b600d0, tar_ch=0x00007ffeefbf2bb8, tar_obj=0x00007ffeefbf2bc8) at handler.c:1359 [opt]
    frame #10: 0x000000010001657e circle`do_get(ch=0x0000000103b600d0, argument=<unavailable>, cmd=<unavailable>, subcmd=<unavailable>) at act.item.c:355 [opt]
    frame #11: 0x00000001000a0707 circle`command_interpreter(ch=0x0000000103b600d0, argument=<unavailable>) at interpreter.c:586 [opt]
    frame #12: 0x000000010004e20c circle`game_loop(local_mother_desc=3) at comm.c:904 [opt]
    frame #13: 0x000000010004c383 circle`main [inlined] init_game(local_port=<unavailable>) at comm.c:541 [opt]
    frame #14: 0x000000010004bf54 circle`main(argc=<unavailable>, argv=<unavailable>) at comm.c:352 [opt]
    frame #15: 0x00007fff6db9e015 libdyld.dylib`start + 1
(lldb) 

And looking at some of the frames:
(lldb) frame select 8
circle was compiled with optimization - stepping may behave oddly; variables may not be available.
frame #8: 0x0000000100090bfe circle`generic_find [inlined] get_number at handler.c:602 [opt]
   599 	  if ((ppos = strchr(*name, '.')) != NULL) {
   600 	    *ppos++ = '\0';
   601 	    strlcpy(number, *name, sizeof(number));
-> 602 	    strcpy(*name, ppos);	/* strcpy: OK (always smaller) */
   603 	
   604 	    for (i = 0; *(number + i); i++)
   605 	      if (!isdigit(*(number + i)))
(lldb) frame variable
(char [512]) number = "2"
(char *) ppos = 0x00007ffeefbf2772 "g"
(int) i = 0
(lldb) frame select 9
frame #9: 0x0000000100090b9d circle`generic_find(arg=<unavailable>, bitvector=44, ch=0x0000000103b600d0, tar_ch=0x00007ffeefbf2bb8, tar_obj=0x00007ffeefbf2bc8) at handler.c:1359 [opt]
   1356	
   1357	  if (!*name)
   1358	    return (0);
-> 1359	  if (!(number = get_number(&name)))
   1360	    return (0);
   1361	
   1362	  if (IS_SET(bitvector, FIND_CHAR_ROOM)) {	/* Find person in room */
(lldb) frame variable
(char *) arg = <variable not available>

(bitvector_t) bitvector = 44
(char_data *) ch = 0x0000000103b600d0
(char_data **) tar_ch = 0x00007ffeefbf2bb8
(obj_data **) tar_obj = 0x00007ffeefbf2bc8
(char [512]) name_val = "bag"
(char *) name = 0x0000006700676162 ""
(int) number = <variable not available>

(int) i = <variable not available>

(int) found = <variable not available>

(lldb) frame select 10
frame #10: 0x000000010001657e circle`do_get(ch=0x0000000103b600d0, argument=<unavailable>, cmd=<unavailable>, subcmd=<unavailable>) at act.item.c:355 [opt]
   352 	    }
   353 	    cont_dotmode = find_all_dots(arg2);
   354 	    if (cont_dotmode == FIND_INDIV) {
-> 355 	      mode = generic_find(arg2, FIND_OBJ_EQUIP | FIND_OBJ_INV | FIND_OBJ_ROOM, ch, &tmp_char, &cont);
   356 	      if (!cont)
   357 		send_to_char(ch, "You don't have %s %s.\r\n", AN(arg2), arg2);
   358 	      else if (GET_OBJ_TYPE(cont) != ITEM_CONTAINER)
(lldb) frame variable
(char_data *) ch = 0x0000000103b600d0
(char *) argument = <variable not available>

(int) cmd = <variable not available>

(int) subcmd = <variable not available>

(char [512]) arg1 = "all"
(char [512]) arg2 = "2.bag"
(char [512]) arg3 = ""
(int) found = 0
(int) cont_dotmode = 0
(char_data *) tmp_char = 0x0000000000000000
(obj_data *) cont = 0x0000000000000000
(int) mode = <register rax is not available>

(int) amount = 1
(lldb) frame select 11
frame #11: 0x00000001000a0707 circle`command_interpreter(ch=0x0000000103b600d0, argument=<unavailable>) at interpreter.c:586 [opt]
   583 	      send_to_char(ch, "No way!  You're fighting for your life!\r\n");
   584 	      break;
   585 	  } else if (no_specials || !special(ch, cmd, line))
-> 586 	    ((*complete_cmd_info[cmd].command_pointer) (ch, line, cmd, complete_cmd_info[cmd].subcmd));
   587 	}
   588 	
   589 	/* Routines to handle aliasing. */
(lldb) frame variable
(char_data *) ch = 0x0000000103b600d0
(char *) argument = <variable not available>

(char [512]) arg = "get"
(char *) line = 0x00007ffeefbf3673 " all 2.bag"
(int) cmd = 499
(int) length = <no location, value may have been optimized out>

(lldb) frame select 12
frame #12: 0x000000010004e20c circle`game_loop(local_mother_desc=3) at comm.c:904 [opt]
   901 		  d->has_prompt = TRUE;	/* To get newline before next cmd output. */
   902 		else if (perform_alias(d, comm, sizeof(comm)))    /* Run it through aliasing system */
   903 		  get_from_q(&d->input, comm, &aliased);
-> 904 		command_interpreter(d->character, comm); /* Send it to interpreter */
   905 	      }
   906 	    }
   907 	
(lldb) frame variable
(socket_t) local_mother_desc = 3
(char [512]) comm = "get all 2.bag"
(timeval) last_time = (tv_sec = 1592395699, tv_usec = 417333)
(fd_set) input_set = {
  fds_bits = {
    [0] = 16
    [1] = 0
    [2] = 0
    [3] = 0
    [4] = 0
    [5] = 0
    [6] = 0
    [7] = 0
    [8] = 0
    [9] = 0
    [10] = 0
    [11] = 0
    [12] = 0
    [13] = 0
    [14] = 0
    [15] = 0
    [16] = 0
    [17] = 0
    [18] = 0
    [19] = 0
    [20] = 0
    [21] = 0
    [22] = 0
    [23] = 0
    [24] = 0
    [25] = 0
    [26] = 0
    [27] = 0
    [28] = 0
    [29] = 0
    [30] = 0
    [31] = 0
  }
}
(int) maxdesc = <variable not available>

(descriptor_data *) d = 0x0000000000000000
(timeval) before_sleep = (tv_sec = 1592395699, tv_usec = 319276)
(int) missed_pulses = <variable not available>

(timeval) now = (tv_sec = 1592395699, tv_usec = 420435)
(timeval) timeout = (tv_sec = 0, tv_usec = 0)
(fd_set) exc_set = {
  fds_bits = {
    [0] = 0
    [1] = 0
    [2] = 0
    [3] = 0
    [4] = 0
    [5] = 0
    [6] = 0
    [7] = 0
    [8] = 0
    [9] = 0
    [10] = 0
    [11] = 0
    [12] = 0
    [13] = 0
    [14] = 0
    [15] = 0
    [16] = 0
    [17] = 0
    [18] = 0
    [19] = 0
    [20] = 0
    [21] = 0
    [22] = 0
    [23] = 0
    [24] = 0
    [25] = 0
    [26] = 0
    [27] = 0
    [28] = 0
    [29] = 0
    [30] = 0
    [31] = 0
  }
}
(fd_set) output_set = {
  fds_bits = {
    [0] = 16
    [1] = 0
    [2] = 0
    [3] = 0
    [4] = 0
    [5] = 0
    [6] = 0
    [7] = 0
    [8] = 0
    [9] = 0
    [10] = 0
    [11] = 0
    [12] = 0
    [13] = 0
    [14] = 0
    [15] = 0
    [16] = 0
    [17] = 0
    [18] = 0
    [19] = 0
    [20] = 0
    [21] = 0
    [22] = 0
    [23] = 0
    [24] = 0
    [25] = 0
    [26] = 0
    [27] = 0
    [28] = 0
    [29] = 0
    [30] = 0
    [31] = 0
  }
}
(descriptor_data *) next_d = 0x0000000000000000
(int) aliased = 0
(fd_set) null_set = <no location, value may have been optimized out>

(timeval) opt_time = <no location, value may have been optimized out>

(timeval) process_time = <no location, value may have been optimized out>

(timeval) temp_time = <no location, value may have been optimized out>

Please Log in or Create an account to join the conversation.

  • Enceladus
  • Topic Author
  • Away
  • Fresh Boarder
  • Fresh Boarder
More
1 week 2 days ago #8795 by Enceladus
Replied by Enceladus on topic Crash on Look .anything
I took the files over to my Windows computer and compiled under Windows Subsystem for Linux with gcc and I no longer get the crash with looking at 2. of anything while on that computer. On OSX homebrew uses clang to compile. Maybe there's some issue going on here with clang?

Please Log in or Create an account to join the conversation.

  • Enceladus
  • Topic Author
  • Away
  • Fresh Boarder
  • Fresh Boarder
More
6 days 5 hours ago #8796 by Enceladus
Replied by Enceladus on topic Crash on Look .anything
On OSX, I edited the Make File to have CC = gcc-9 , then did 'make clean' and wouldn't you know it? On logging in, I was able to do l 2.board, get all 99.bag, k 3.mob, read 4.mail etc all without crashing! So something about clang on OSX, at least High Sierra, makes that one particular function crash the mud. Suspicious!

Please Log in or Create an account to join the conversation.

More
6 days 5 hours ago #8797 by Rumble
Replied by Rumble on topic Crash on Look .anything
Interesting, I've never tried running tbaMUD on OSX. Thanks for putting in the time and energy to troubleshoot it yourself. And more importantly following up with your solution so the next time this comes up we can be more helpful.

Anyone with OSX experience know why the GCC version would matter?

Rumble
The Builder Academy
tbamud.com 9091
This email address is being protected from spambots. You need JavaScript enabled to view it.

Please Log in or Create an account to join the conversation.

Time to create page: 0.204 seconds