curiousdannii-testing / inform7-imported-bugs

0 stars 0 forks source link

[I7-1979] [Mantis 2015] Crash on certain action patterns specifying kind of action and noun #105

Closed curiousdannii-testing closed 2 years ago

curiousdannii-testing commented 2 years ago

Reported by : dfremont

Description :

An action pattern of the form "doing something other than K to X" where K is a kind of action causes the compiler to crash with code 11.

It might be helpful to have a specialized Problem message for this case rather than the generic "that did not make sense as a description of an action" one.

Steps to reproduce :

Foo is a room.
Examining is stalling.
Instead of doing something other than stalling to something, do nothing.

Additional information :

This issue was discovered by Suho on the forum: http://www.intfiction.org/forum/viewtopic.php?f=7&t=21858.

Backtrace:

Exception Type:EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x000000000000005c
Exception Note:EXC_CORPSE_NOTIFY

VM Regions Near 0x5c:
-->
__TEXT 0000000000001000-000000000026a000 [ 2468K] r-x/rwx SM=COW /Applications/Inform.app/Contents/MacOS/ni

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 ni 0x001dbd8f PL_Actions_can_have_parameters + 15
1 ni 0x001de47c anl_excluded_NTMC + 156
2 ni 0x000335bf Preform__parse_nt_against_word_range + 8335
3 ni 0x00032f50 Preform__parse_nt_against_word_range + 6688
4 ni 0x001df622 PL_ActionsLists_parse + 146
5 ni 0x001e1e62 PL_ActionsPatterns_parse_action_pattern_dash + 146
6 ni 0x001e1d42 ap_common_core_inner_inner_inner_NTMR + 402
7 ni 0x00031789 Preform__parse_nt_against_word_range + 601
8 ni 0x00032f50 Preform__parse_nt_against_word_range + 6688
9 ni 0x00032f50 Preform__parse_nt_against_word_range + 6688
10 ni 0x00032f50 Preform__parse_nt_against_word_range + 6688
11 ni 0x001e14a4 PL_ActionsPatterns_ap_parse_inner + 772
12 ni 0x001e1161 action_pattern_core_NTMR + 97
13 ni 0x00031789 Preform__parse_nt_against_word_range + 601
14 ni 0x00032f50 Preform__parse_nt_against_word_range + 6688
15 ni 0x00032f50 Preform__parse_nt_against_word_range + 6688
16 ni 0x0017e1ed Phrases_Usage_to_runtime_context_data + 269
17 ni 0x0017e026 Phrases_Manager_parse_rule_parameters + 150
18 ni 0x001a1ee0 TemplateFiles__interpret + 28160
19 ni 0x001fa820 Main__core_inform_main + 1568
20 ni 0x001fa1fb main + 43
21 ni 0x00001bfd _start + 212
22 ni 0x00001b28 start + 40

imported from: [Mantis 2015] Crash on certain action patterns specifying kind of action and noun
  • status: Closed
  • resolution: Resolved
  • resolved: 2022-04-10T04:48:17+10:00
  • imported: 2022/01/10
curiousdannii-testing commented 2 years ago

557058:4c095ffd-6d6f-47ce-9e73-77c613347b86:

Comment by zarf :
Confirmed.

"Instead of doing something other than stalling to the rock" produces a similar stack trace. Slightly different in the middle, but the same path down to the crash point.

curiousdannii-testing commented 2 years ago

61eedb62875fc10070240916:

Fixed via this commit: https://github.com/ganelson/inform/commit/76dc0531207db7a78cfc43eabbcef5869318698e