Commit Graph
45 Commits
Author SHA1 Message Date
Naios 93d1028d75 Dep/CppFormat: Update cppformat to cppformat/cppformat@7859f81233
* clean up our custom CMakeList.txt
2015-07-01 21:18:38 +02:00
Naios e142c3b873 Cleanup duplicated names from contributors list.
* ref 1a7a9619d8
2015-06-30 23:39:31 +02:00
Naios 4335611010 Core/Updater: Fix mysql cli password prompt when password is empty.
* ref: http://community.trinitycore.org/topic/11510-world-server-bug-enter-password-to-update/
2015-06-30 23:33:07 +02:00
Naios 836ec5a6e6 Core/Utilities: Fix callback invokation when there are no tasks present.
* thx @joschiwald for noticing.
2015-06-30 23:29:19 +02:00
Naios 1a34fde96b Merge pull request #14971 from ShinDarth/fix_char_upd
DB/Characters fix auto updater
2015-06-29 00:11:08 +02:00
Naios 3d95aba2b3 Core/Utilities: TaskScheduler: add a task validator and on update success callback.
* makes it possible to block tasks if there is an active spellcast.
* requested by @joschiwald
2015-06-21 18:19:17 +02:00
Naios bd661b58fd Core/Updater: Fix a wrong formatter introduced in 0d095109eec31
* thanks @Aokromes for noticing
2015-06-21 18:13:01 +02:00
Naios a5b3862bc1 Core/Updater: Add some info about the count of applied updates.
* some minor improvements
* add a log message when database updates are disabled.
2015-06-20 14:33:31 +02:00
Naios 1a7a9619d8 Update contributors list (THANKS file)
* See https://gist.github.com/Naios/25810829e66b7ddd8b82 for the full procedure & sources.
* Most names were taken from commits (3.3.5 & 6.x branch)
* Also contributors who were mentioned in commits were included (@, thx, thanks, Author:, author:)

(cherry picked from commit 5b64df1a26d8b521282ffa41a17ad49a2e99558c)
2015-06-13 00:56:24 +02:00
Naios 151a0f5c5e Core/Shared: Hide the internal shared_ptr of the TaskContext
* use . operator instead of -> to access the TaskContext now.
* Add TaskContext::IsExpired to check whether the owner has expired.
2015-06-03 18:24:21 +02:00
Naios da77a90aa9 Shared/Util: Introduce a task scheduler which schedules task with c++11 techniques.
* Use std::function as callback (methods, lamdas & std::bind).
* Uses std::chrono::duration as duration type (Milliseconds, Seconds...)
  - With c++11 user defined literals we could just write "11s" for example (MSVS 2015, gcc & clang).
* Provides a lot of overloads for easier usage:
  - Static durations or random durations between min and max.
  - Named (with group ids - group id 0 is possible) or anonymous tasks.
  - Asynchronous tasks.
* Is adapted to the current needs of scripting:
  - Repeat tasks through the TaskContext
  - Schedule new tasks from the context.
  - Provides access to the times repeat counter of a task,
    this will help to schedule multi step events (dialogs for example).

See https://gist.github.com/Naios/6d143538abdc3d32fd2b for usage examples.
2015-05-31 19:32:09 +02:00
Naios 2592528741 Core/Log: Fix newlines when using dynamic log names
* thanks @Aokromes for reporting
* also removes an unnecessary std::move
2015-04-24 19:44:16 +02:00
Naios 66ce97c87e Dep/CppFormat: Update cppformat to cppformat/cppformat@fd53bb6fb8
* fixes /W4 warning spamming.
2015-04-05 21:30:22 +02:00
Naios de490674ff Core/DBUpdater: Exit clean if a query failed to apply.
* Fix some \W4 warnings about constructors.
2015-04-05 00:23:12 +02:00
Naios 85d6ff9570 Core/Log: Remove some unnecessary std::move's.
* This are r-value references already.
* Thanks @Shauren for noticing
2015-04-05 00:23:11 +02:00
Naios 1939367108 Core/Database: Remove va_list from PreparedStatement::PAppend. 2015-04-02 21:07:48 +02:00
Naios c9b0c8a0ca Core/World: Remove va_list from World::RecordTimeDiff.
* also split it in ResetTimeDiffRecord() and RecordTimeDiff() to avoid passing of null values.
2015-04-02 21:07:46 +02:00
Naios df4723af25 Core/Database: Remove va_args from DatabaseWorker::Execute methods.
* Also delegate SQLQueryHolder::SetPQuery into SetQuery.
2015-04-02 21:07:44 +02:00
Naios 589296da90 Dep/CppFormat: Update cppformat to cppformat/cppformat@aab64b55a4
* fixes argument limit, argument count is unlimited now.
2015-04-02 21:07:42 +02:00
Naios c386711972 CMake: Use source_groups to represent the source tree
* It let ide's (like vs) display the source tree.
* Disabled by default.
* Soft requirement is cmake >= 2.8.12 .
* Offers 2 modes: flat & hierarchical.
* For detailed description see #14471
* Thanks @click for help and advises.
* Closes #14471
2015-03-29 16:08:28 +02:00
Naios c61fac843b Core/Database: Return an unknown error code instead of false (0) if mysql_init failed.
* Thanks @et65 for noticing.
* ref #14139

(cherry picked from commit 83bbe00785a7ee7c8141d83bfe94a1415466c64d)
2015-03-29 15:04:51 +02:00
Naios 6486827204 Core/Database: Fix a mistake in 54ee5267244acac16
* Also use proper errno instead of 0 when reconnecting.
* Thanks @et65 for reporting
* ref #14139

(cherry picked from commit 47410157b1d1e51062732696ad5f457a69019ef4)
2015-03-29 14:28:18 +02:00
Naios 832234c47b Core/Log: Improve creation of log prefixes.
* this also fixes non whitespace seperated timestamps in logs after 95ebe4f31cba6b4772cfd19 @Aokromes
* remove an unnecessary stringstream in Log::outCommand
* delete copy constructor of LogMessage to prevent unwanted copies

(cherry picked from commit a2e280c8a8478bbe0652c1850b1a435abba79f93)
2015-03-28 17:29:56 +01:00
Naios 71c0d4f792 Core/Log: Fix linker errors that occur on msvc 12 lower then update 4
* http://stackoverflow.com/questions/4891067/weird-undefined-symbols-of-static-constants-inside-a-struct-class
* http://www-01.ibm.com/support/knowledgecenter/SSGH3R_8.0.0/com.ibm.xlcpp8a.doc/language/ref/cplr038.htm%23cplr038
* closes #14463
* ref #14317

(cherry picked from commit 9b0b1185e4f9eb48cd16237f7622204687b9c01a)

Conflicts:
	src/server/game/Server/WorldSocketMgr.cpp
2015-03-28 17:29:43 +01:00
Naios 11e1f4af60 Core/Database Improve commit 39bdd06446dc
* found a better way where no cast is needed.
* ref #14430

(cherry picked from commit 54ee5267244acac16e4b56342e64c0235ee0599b)
2015-03-28 17:25:16 +01:00
Naios 62a5ee8e2c Core/Database: Prepare statements at reconnect.
* Closes #14430

(cherry picked from commit 39bdd06446dc8ae6f19e017e4390bd2aa7834d03)
2015-03-27 15:38:58 +01:00
Naios 0778cc3332 Core/DBUpdater: Use correct formatter for size_t
* thanks @DDuarte pointing this out.

(cherry picked from commit b2b8de5786364d81fbce643e8f00bcc0129ed760)
2015-03-24 22:02:08 +01:00
Naios 4201ca021b Core/DBUpdater: Add the possibility to limit the remove of orphaned entries.
* This will save you from loosing your update history if you use a repository in bad state (revision or branch) by mistake.
* Also turned 1 error message into a warning

(cherry picked from commit 966282fbed24a0d0cf8cb3e05b1849c3e6a0d1d6)
(cherry picked from commit 3ad7776d5061308d3e2b4ff9e3cbf67d48bffdd6)
2015-03-24 13:03:55 +01:00
Naios 4fd51ab3b9 Core/DBUpdater: Use correct uint64 to store timestamps.
* Thanks @Shauren for pointing out.
* Also removes an invalid argument thanks @jackpoz for noticing.

(cherry picked from commit 8e48ef7863c5018aa185913ce6a616e46ef5b17e)
2015-03-22 01:33:58 +01:00
Naios 93457ac9d8 Core/Database: Fix some warnings on gcc
* warning: when initialized here [-Wreorder]
* thanks to @Vincent-Michael

(cherry picked from commit cff3910ec82b9f5ebc462a756ce39cc062120cfa)
2015-03-22 00:34:07 +01:00
Naios 2bd1c8541d Core/Updates: Add an automatic database update system. Automatically detects new and edited sql updates through file lists and hashing. Detects renames, deletes and is able to create and auto import full databases. * cleanups in main.cpp of world & bnetserver * refactoring in DatabaseWorkerPool.h & MySQLConnection.cpp
Make sure you re-run cmake, because boost::iostreams was added as dependency.
Maybe you need to install libboost-iostreams1.55-dev on unix as well.

Import every update manual until (included) those INSERT IGNORE updates for each database.

Thanks DDuarte and Shauren for your amazing ideas, help and advises.

In hope that nobody gets a "Your database structure is not up to date..." anymore ,-)

(cherry picked from commit 352012e53173372ebc82898e1b6854c983b01b25)
(cherry picked from commit 1f7f9feafc3f5017d617634ae993d2cdf4430920)

For 3.3.5:
* Synchronized ConfigureBoost.cmake with 6.x, libboost-filesystem1.55-dev also added as dependency!

Signed-off-by: Naios <naios-dev@live.de>
Signed-off-by: Nayd <dnpd.dd@gmail.com>
2015-03-21 20:54:54 +00:00
Naios 5a8cc94d36 DB/Misc: Rename an pr update to match its merged date 2015-03-19 10:51:53 +01:00
Denis 9a1db399d9 Merge pull request #14405 from ariel-/gpsfix
Crash fix in .gps command
2015-03-19 10:49:21 +01:00
Naios e96676aedd Core/Misc: Fix some issues detected by static analysis
* Assignment of function parameter has no effect outside the function. Did you forget dereferencing it?
  -> This argument is passed by value, it makes no sence so set it to null here.

* Member variable 'instance_violet_hold_InstanceMapScript::bWiped' is not initialized in the constructor.

(cherry picked from commit 433bc289c2c82b7377ad0189e415a3ca070d220f)
2015-03-18 20:23:47 +01:00
Naios f25666375e Dep/CppFormat: Update cppformat to cppformat/cppformat@bf8636c959
* fixes detecting support of <initializer_list>
* fixes build on solaris

(cherry picked from commit e40a5bf0b1483ce4275464a0a75a3d99035ca71c)
2015-03-18 20:12:20 +01:00
Naios dfe5e1e561 Core/RemoteAccess: Remove an unused define in RASession
* probably fixes gcc compile after adding cppformat

(cherry picked from commit a610dea85c77da9ce6c2be5b10f8259e3f315227)
2015-03-18 16:38:38 +01:00
Naios fc665b14dc Core/Log: Readd include of <stdarg.h> to fix compile issues under gcc
(cherry picked from commit d64e6ffade392be32f634b32658a6e0353f369c1)
2015-03-18 15:37:43 +01:00
Naios 301ec0be56 Core/Game: Fix some issues detected by static analysis.
* Possible inefficient checking for 'list' emptiness.

* Variable '_scheduledScripts' is assigned in constructor body.
  Consider performing initialization in initialization list.

* Variable 'Text' is assigned in constructor body.
  Consider performing initialization in initialization list.

* Possible inefficient checking for 'm_loadedScripts' emptiness.

(cherry picked from commit 9a61049f88835fd6bdb75905f042583d038d0667)

Conflicts:
	src/server/game/Server/Packets/TicketPackets.cpp
2015-03-18 01:13:47 +00:00
Naios a38945a3b3 Core/Log: Fix some issues detected by static analysis.
* Either inefficient or wrong usage of string::find(). string::compare() will
  be faster if string::find's result is compared with 0, because it will not scan the whole string.
  If your intention is to check that there are no findings in the string,
  you should compare with std::string::npos.

* C-style pointer casting detected. C++ offers four different kinds of casts as replacements:
  static_cast, const_cast, dynamic_cast and reinterpret_cast.

(cherry picked from commit 8882a6ca78e90d2980a3cd8d53acea9d2137f8b8)
2015-03-18 01:13:46 +00:00
Naios 642ed8a5d2 Core/PhaseMgr: Fixed an updateleak that occured if the rewarded quest hadn't requirements
* Fixed the range for phase ids in the phase_definition table
* solves http://www.trinitycore.org/f/topic/8737-condition-quest-rewarded-dosnt-work-instantly/
2013-06-29 15:44:32 +02:00
Naios 6191642e59 Core/SmartScripts: Check Conditions also for timed Events
* some cleanup work in SmartScripts.cpp

Core/SmartScripts: Some Corrections to last commit
2013-01-17 20:25:29 +01:00
Naios 978611d7dd Core/DataStores: Upgraded achievement_dbc db storage to 4.3.4 2012-12-27 15:42:55 +01:00
Naios 33ce380c12 Core/DataStores: Upgraded spelldifficulty_dbc db storage to 4.3.4
* Update 2012_12_27_00_world_spelldifficulty_dbc_434.sql is required
2012-12-27 15:42:42 +01:00
Naios 38b5a6c7be Core/Spells: On Dismount use the amount to get the MountCapabilityEntry to remove related mount auras #8123 2012-10-22 20:12:46 +02:00
Naios 61dce1a02e Core/PhaseMgr: Implemented Phase Definitions, Terrainswap and multiphasing
* fixes cataclysm aura effect SPELL_AURA_PHASE without phasemasks defined in miscValueA
* implements CONDITION_SOURCE_TYPE_PHASE_DEFINITION

Thanks to:
 - Cyberbrest: For the hard research work about multiphasing.
 - Venugh: He helped me with a lot of strange compile Errors.
 - Shauren: For the 4.3.4 phaseshift packet.
 - Booksize: He showed me how terrainswap works

Signed-off-by: Naios <naios-dev@live.de>
2012-10-15 20:31:41 +02:00