Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update to latest version #8

Merged
merged 5,278 commits into from
Mar 5, 2020
Merged

Conversation

RedShakespeare
Copy link
Owner

As above.

ZhilkinSerg and others added 30 commits February 25, 2020 23:10
Note that rock forge and smokers are usable for crafting
Clear up item ownership for dead factions
`xgettext` can only extract the first string when using ternary
operator. Considering that the "not possessive" context was
introduced in #27482 and it is not ambiguous now. We can remove
this context for better extraction.
Generic name to object, volume to string
Remove "not possessive" context
Fix Eat menu resetting after consuming food
ZhilkinSerg and others added 26 commits March 3, 2020 16:33
Generic name to object, volume to string, flags to array
Tool name to object, volume to string
Code optimizations reported by static code analysis (2020-03-02)
Reset scent types on game load
* Remove (void) where variable is used
* Remove unused params
* Rewrite get_near_zone_type_for_item fragment
Nerfed the hell out of memory update overhead
* Fix looks_like

* Name to object, volume to string
Tool name to object, volume to string
* Volume to string, fix looks_like

* Name to object, volume to string
@RedShakespeare RedShakespeare merged commit 017f56e into RedShakespeare:master Mar 5, 2020
RedShakespeare pushed a commit that referenced this pull request May 10, 2020
The function `are_requirements_nearby` accesses `player::backlog::front()`, which causes UB when the `backlog` list is empty.

This is usually checked by the caller, but there is at least one way to reach this function without that check:

```
#2  0x000000000083dfaa in string_id<activity_type>::operator== (rhs=..., this=0xdf1b460) at src/player_activity.h:93
#3  are_requirements_nearby (loot_spots=std::vector of length 21, capacity 32 = {...}, needed_things=..., p=..., activity_to_restore=..., in_loot_zones=true, src_loc=...)
    at src/activity_item_handling.cpp:1113
#4  0x0000000000843a46 in generic_multi_activity_check_requirement (p=..., act_id=..., act_info=..., src=..., src_loc=...,
    src_set=std::unordered_set with 1 element = {...}, check_only=false) at src/activity_item_handling.cpp:2676
#5  0x0000000000852813 in generic_multi_activity_handler (act=..., p=..., check_only=check_only@entry=false) at src/activity_item_handling.cpp:2885
#6  0x0000000000800896 in activity_handlers::multiple_butcher_do_turn (act=<optimized out>, p=<optimized out>) at src/activity_handlers.cpp:3822
#7  0x000000000082b248 in std::_Function_handler<void (player_activity*, player*), void (*)(player_activity*, player*)>::_M_invoke(std::_Any_data const&, player_activity*&&, player*&&) (__functor=..., __args#0=<optimized out>, __args#1=<optimized out>) at /usr/include/c++/8/bits/std_function.h:88
#8  0x00000000008630e3 in std::function<void (player_activity*, player*)>::operator()(player_activity*, player*) const (this=<optimized out>, __args#0=<optimized out>,
    __args#0@entry=0xdf1b330, __args#1=<optimized out>, __args#1@entry=0xdf1ae50) at /usr/include/c++/8/bits/std_function.h:260
#9  0x0000000000860306 in activity_type::call_do_turn (this=0x2c3c930, act=act@entry=0xdf1b330, p=p@entry=0xdf1ae50) at src/activity_type.cpp:118
#10 0x00000000014a968b in player_activity::do_turn (this=this@entry=0xdf1b330, p=...) at src/player_activity.cpp:237
#11 0x00000000013092a4 in npc::do_player_activity (this=this@entry=0xdf1ae50) at src/npcmove.cpp:3299
#12 0x0000000001322a07 in npc::execute_action (this=this@entry=0xdf1ae50, action=<optimized out>, action@entry=npc_player_activity) at src/npcmove.cpp:1237
#13 0x000000000132690a in npc::move (this=this@entry=0xdf1ae50) at src/npcmove.cpp:907
```

This adds a simple check within the function.
RedShakespeare pushed a commit that referenced this pull request May 19, 2020
RedShakespeare pushed a commit that referenced this pull request May 19, 2020
Update furniture-industrial.json
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.