Commit Graph

21073 Commits

Author SHA1 Message Date
jackpoz
1083dbb993 Core/Misc: Remove Unit::Get* wrappers for ObjectAccessor::Get* 2014-05-20 21:21:33 +02:00
jackpoz
d36ecbf4a3 Merge pull request #12076 from Trisjdc/even_more_sai
Core/SAI: Clear UNIT_STATE_EVADE immediately if we're about to follow a target on EnterEvadeMode
2014-05-19 22:00:48 +02:00
jackpoz
0166d9bf89 Merge pull request #12083 from Trisjdc/pet_combat
Core/PetAI: Pet's owner should NOT enter combat when the pet attacks/enters combat
2014-05-19 21:44:15 +02:00
jackpoz
35d5e63258 Merge pull request #12018 from Foereaper/master
Core/Misc: Fixed SendAddonMessage issue.
2014-05-19 21:33:08 +02:00
Aokromes
a5f84e83cc DB/Creature: Fix Crazed Mana Surge
By dr-j, closes #11998
2014-05-19 18:31:57 +02:00
Aokromes
ced47da812 DB/Quest: Fix Gambling Debt
By dr-j, closes #12092
2014-05-19 18:28:57 +02:00
Shauren
b83cff2a85 Core/Vehicles: Set proper power type using PowerDisplay.dbc
Original commit by Xfurry - cmangos/mangos-wotlk/bef8c99cc07c96d4e2f45e0ff6bc107068555ffb
2014-05-19 15:42:51 +02:00
Shauren
b41de6cb38 Core/Misc: Removed remnants of old db threading model 2014-05-19 14:48:10 +02:00
joschiwald
37073a8817 Merge pull request #12082 from MitchesD/misc_2
Scripts/Krystallus: converted to EventMap, removed useless code
2014-05-19 02:48:41 +02:00
jackpoz
7228bd3664 Revert "Core/Logging: Use logger cache for speed up logger filter search"
This reverts commit 39331ea7b9.
This is required to fix a race condition introduced with the logger cache. Adding a locking mechanism might make worthless the speed gain added by the cache itself, push a proper thread-safe implementation if it's worth it.

Helgrind log:
Possible data race during write of size 8 at 0x736F428 by thread #1
Locks held: none
   at 0x11872DF: std::_Hashtable<std::string, std::pair<std::string const, Logger const*>, std::allocator<std::pair<std::string const, Logger const*> >, std::__detail::_Select1st, std::equal_to<std::string>, std::hash<std::string>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::_M_insert_bucket_begin(unsigned long, std::__detail::_Hash_node<std::pair<std::string const, Logger const*>, true>*) (hashtable.h:1196)
   by 0x11865A1: std::_Hashtable<std::string, std::pair<std::string const, Logger const*>, std::allocator<std::pair<std::string const, Logger const*> >, std::__detail::_Select1st, std::equal_to<std::string>, std::hash<std::string>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::_M_insert_unique_node(unsigned long, unsigned long, std::__detail::_Hash_node<std::pair<std::string const, Logger const*>, true>*) (hashtable.h:1342)
   by 0x1185A48: std::__detail::_Map_base<std::string, std::pair<std::string const, Logger const*>, std::allocator<std::pair<std::string const, Logger const*> >, std::__detail::_Select1st, std::equal_to<std::string>, std::hash<std::string>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true>, true>::operator[](std::string const&) (hashtable_policy.h:496)
   by 0x1184F3A: std::unordered_map<std::string, Logger const*, std::hash<std::string>, std::equal_to<std::string>, std::allocator<std::pair<std::string const, Logger const*> > >::operator[](std::string const&) (unordered_map.h:596)
   by 0x1184495: Log::GetLoggerByType(std::string const&) (Log.h:106)
   by 0x1184527: Log::ShouldLog(std::string const&, LogLevel) (Log.h:112)
   by 0x16E7121: World::LoadConfigSettings(bool) (World.cpp:909)
   by 0x16EB623: World::SetInitialWorldSettings() (World.cpp:1276)
   by 0x118F0EC: Master::Run() (Master.cpp:169)
   by 0x1196AFF: main (Main.cpp:142)

This conflicts with a previous read of size 8 by thread #3
Locks held: none
   at 0x1186EA6: std::_Hashtable<std::string, std::pair<std::string const, Logger const*>, std::allocator<std::pair<std::string const, Logger const*> >, std::__detail::_Select1st, std::equal_to<std::string>, std::hash<std::string>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::_M_find_before_node(unsigned long, std::string const&, unsigned long) const (hashtable.h:1162)
   by 0x1186263: std::_Hashtable<std::string, std::pair<std::string const, Logger const*>, std::allocator<std::pair<std::string const, Logger const*> >, std::__detail::_Select1st, std::equal_to<std::string>, std::hash<std::string>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::_M_find_node(unsigned long, std::string const&, unsigned long) const (hashtable.h:604)
   by 0x11857B9: std::_Hashtable<std::string, std::pair<std::string const, Logger const*>, std::allocator<std::pair<std::string const, Logger const*> >, std::__detail::_Select1st, std::equal_to<std::string>, std::hash<std::string>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::find(std::string const&) (hashtable.h:1025)
   by 0x1184DE2: std::unordered_map<std::string, Logger const*, std::hash<std::string>, std::equal_to<std::string>, std::allocator<std::pair<std::string const, Logger const*> > >::find(std::string const&) (unordered_map.h:543)
   by 0x11842EF: Log::GetLoggerByType(std::string const&) (Log.h:84)
   by 0x1184527: Log::ShouldLog(std::string const&, LogLevel) (Log.h:112)
   by 0x189AACA: MySQLConnection::Execute(char const*) (MySQLConnection.cpp:175)
   by 0x18A3225: BasicStatementTask::Execute() (AdhocStatement.cpp:56)

Address 0x736F428 is 120 bytes inside a block of size 184 alloc'd
   at 0x4C2AE3A: operator new(unsigned long, std::nothrow_t const&) (vg_replace_malloc.c:350)
   by 0x1185046: ACE_Singleton<Log, ACE_Thread_Mutex>::instance() (Singleton.cpp:91)
   by 0x11968E2: main (Main.cpp:135)
2014-05-18 16:53:29 +02:00
jackpoz
0904858624 Revert "Core/Logging: store loggers in cache correctly"
This reverts commit c6a4d5a1de.
2014-05-18 16:04:59 +02:00
jackpoz
a83c315771 Core/Calendar: Fix warning
Fix warning added b6048f89f7 about signed/unsigned comparison mismatch
2014-05-18 14:41:11 +02:00
MitchesD
fa1358afce Scripts/Krystallus: converted to EventMap, removed useless code 2014-05-18 13:48:09 +02:00
Shauren
f9c7bb4171 Partially revert f296095191 "Fix various warnings. The core, the scripts and the tools now compile without warnings with -Wall -Wextra -pedantic."
Visual studio does not support constexpr
Made semicolon after "Prepare*Script" mandatory - workaround for dumb IDEs inserting extra indentation level after newline
2014-05-18 12:50:10 +02:00
Trisjdc
8aee9dd948 Core/PetAI: Pet's owner should NOT enter combat when the pet attacks/enters combat 2014-05-18 11:00:48 +01:00
Aokromes
fce80ffa6e Update 2014_05_18_04_world_misc.sql 2014-05-18 03:30:44 +02:00
Aokromes
23691bd4d1 Update 2014_05_18_04_world_misc.sql 2014-05-18 03:30:02 +02:00
Aokromes
83c3abce61 DB/Spawns: Myralion Sunblaze Frozen Halls spawns
By Foldy, closes #11899
2014-05-18 03:12:53 +02:00
Aokromes
f3676f3675 Rename 2014_05_18_02_world_gameobject.sql to 2014_05_18_02_world_gameobject.sql 2014-05-18 01:59:07 +02:00
Aokromes
71e38c7b51 DB/Misc: Nesingwary Lackey Ear
By nelegalno, closes #8624
2014-05-18 01:58:24 +02:00
Aokromes
820095230d DB/Gameobject: Thunderbrew Lager Keg
By Foldy, closes #12078
2014-05-18 01:47:52 +02:00
Aokromes
f8f8819bef DB/Creature: Ethereal Soul-Trader
By Foldy, closes #12080 updates #4152
2014-05-18 01:43:40 +02:00
Sebastian Valle Herrera
b70edf7bca Merge pull request #12071 from Praetonus/warnings
Fix various warnings.
2014-05-17 18:40:23 -05:00
Aokromes
2d1272da5f DB/Creature: Highlord Darion Mograine - Restore Shadow's Edge gossip
By Foldy, closes #12079
2014-05-18 01:39:03 +02:00
Sebastian Valle Herrera
d76da63a5a Merge pull request #12070 from Trisjdc/more_sai
Core/SAI: Prevent nullifying damage, because of player damage requirements
2014-05-17 18:37:50 -05:00
jackpoz
5e86dea0b0 Shared/Packets: Handle crash by throwing an exception instead
Throw a ByteBufferException when trying to access the first element of an empty ByteBuffer class
2014-05-18 00:51:40 +02:00
jackpoz
c200d2c8cc Core/Warden: Fix crash
Fix crash with empty CMSG_WARDEN_DATA packets
2014-05-18 00:29:00 +02:00
jackpoz
03f16d2e90 Shared/Database: Increase Database Worker Pool queue size
Increase DatabaseWorkerPool queue size from the default 16KB to 8MB to avoid blocking the caller thread when queuing an async statement/transaction.
2014-05-17 23:48:32 +02:00
Shauren
8eeec647d1 Fixed build without pch 2014-05-17 21:35:39 +02:00
jackpoz
b6048f89f7 Core/Calendar: Align max amount of Players to be invited to Client limits
Limit the max amount of Players to be invited to a Calendar event to 100, same limit as the one in the Client
2014-05-17 21:22:28 +02:00
Shauren
a62f95e4c2 Core/Calendar: Use single database transaction for adding multiple invites when creating new event 2014-05-17 21:02:01 +02:00
joschiwald
1dbc943297 Core/GameObjects: fixed instant reset of gameobjects after activation 2014-05-17 20:05:43 +02:00
Warpten
488e4ef8e1 Contrib: Added an updated version of the configuration file merger tool.
This one lets you choose which value to keep between the two configuration files.
Make sure to carefully read the file's lines 3 to 9 to make sure you don't misuse it and get back at me later raging.
It is not exactly as I would like it to be, but current state will have to do.

You can try it out live at: http://tinyurl.com/kzxmrlm
2014-05-17 14:54:17 +02:00
Trisjdc
9bad26fc88 Core/SAI: Clear UNIT_STATE_EVADE immediately if we're about to follow a target on EnterEvadeMode (MoveFollow does not clear evade) 2014-05-16 19:46:02 +01:00
Praetonus
e7255e66da Remove changes in dep file. 2014-05-15 23:10:21 +02:00
Praetonus
f296095191 Fix various warnings. The core, the scripts and the tools now compile without warnings with -Wall -Wextra -pedantic.
-Fix warnings from -Woverflow on implicit constant conversion.
-Fix warnings from -pedantic.
-Fix warnings from -pedantic.
-Fix warnings from -Wformat.

Two minor changes in addition :

-Replace a defined value equal to 2^31 - 1 by std::numeric_limits<int>::max().
-Remove useless null-check on pointer returned by new. New doesn't returns nullptr on failure, it throws std::bad_alloc.
2014-05-15 21:32:47 +02:00
Trisjdc
50336af1c7 Core/SAI: Prevent nullifying damage, because of player damage requirements 2014-05-15 17:05:02 +01:00
jackpoz
9d760098a5 Core/Misc: Fix crash in ticket creation
Fix a crash happening with malicious CMSG_GMTICKET_CREATE packets.
2014-05-14 22:07:20 +02:00
jackpoz
32386be8e7 Merge pull request #12021 from Trisjdc/spell_target_dest
Core/Spells: Replace MovePosition by MovePositionToFirstCollision in spell dest target handling.
2014-05-13 21:02:07 +02:00
jackpoz
d32180df17 Merge pull request #12058 from Trisjdc/sunwell
Scripts/SWP: Sathrovarr will no longer cause player teleports on grid load
2014-05-13 20:48:23 +02:00
Trisjdc
593fb9b68a Scripts/SWP: Sathrovarr will no longer cause player teleports on grid load 2014-05-13 11:32:56 +01:00
Aokromes
dcc64f4c69 DB/Conditions: Fix startup error added on 018da66 2014-05-13 11:36:19 +02:00
jackpoz
db2593f41d Core/Arena: Fix exploit in arena team
Fix exploit that allowed anyone to add a target Player to any arena team.
2014-05-12 22:40:55 +02:00
jackpoz
b17e3246fe Core/Misc: Fix static analysis issues
Fix uninitialized values spotted by coverity.
Remove unused "dynamic analysis" code, use Valgrind or another dynamic analysis tool instead if needed.
2014-05-12 21:18:59 +02:00
Aokromes
0334c21394 DB/Creature: Fix Antipersonnel Cannon (1) immune mask
Closes #11944, by gecko32
2014-05-12 11:06:36 +02:00
Aokromes
d6d5bc7918 Move file 2014_05_12_00_world_misc.sql 2014-05-12 10:30:51 +02:00
Aokromes
018da6689d DB/Creature: Fix Argent Tournament Vendors
By dr-j, closes #10351
2014-05-12 10:29:36 +02:00
Discover-
da50b92cdf Merge pull request #12050 from Trisjdc/u_liek_fish_questionmark
Core/Spells: Fix fishing on areas with liquid data but no valid height
2014-05-12 06:34:52 +02:00
Kinzcool
668ed58847 DB/Gameobjects: Updated the VerifiedBuild of some gameobjects 2014-05-11 13:05:42 -04:00
joschiwald
de6eddaa35 Scripts/HoR: fixed conflict between multiple classes with same name
Closes #12051
2014-05-11 18:13:02 +02:00