-
Posts
2033 -
Joined
-
Last visited
-
Days Won
71 -
Donations
0.00 GBP
Content Type
Profiles
Bug Tracker
Wiki
Release Notes
Forums
Downloads
Blogs
Events
Everything posted by madmax
-
Changed Version to 22.1 Changed Implemented Version to Unset Changed Milestone to 22
-
Changed Version to 22.1 Changed Implemented Version to Unset Changed Milestone to 22
-
Quest item drop rates
madmax commented on cabfever's bug in Archived Reports (Zero)(Resolved issues)
Changed Version to 22.1 Changed Implemented Version to Unset Changed Milestone to 22 -
Changed Version to 22.1 Changed Implemented Version to Unset Changed Milestone to 22
-
Changed Status to Awaiting Feedback Changed Version to 22.1 Changed Implemented Version to Unset Changed Milestone to 22
-
Creature respawning triggers levelup animation and sound
madmax commented on madmax's bug in Mangos Zero
Changed Implemented Version to Unset Changed Milestone to 22 Changed Type to Core -
[zero] Lots of DB errors on new install
madmax commented on rage_311's bug in Archived Reports (Zero)(Resolved issues)
Changed Status to Not a bug Changed Priority to Normal Changed Category to Minor -
Atiesh, Greatstaff of the Guardian - Causes error on console
madmax commented on madmax's bug in Mangos Zero
Changed Version to 22.1 Changed Implemented Version to Unset Changed Milestone to 22 Changed Category to Item -
Darkmoon Fair NPC 'Sayge'
madmax commented on Necrovoice's bug in Archived Reports (Zero)(Resolved issues)
Changed Status to Confirmed Changed Implemented Version to Unset Changed Milestone to 22 Changed Priority to Normal Changed Category to Quest -
http://www.wowhead.com/quest=5624
madmax commented on Ammon's bug in Archived Reports (Zero)(Resolved issues)
Changed Status to Awaiting Feedback Changed Implemented Version to Unset Changed Milestone to 22 Changed Priority to Normal Changed Category to Quest -
Changed Status to Awaiting Feedback Changed Implemented Version to Unset Changed Milestone to 22 Changed Priority to Normal
-
http://www.wowhead.com/npc=5595/ironforge-guard#comments:id=1559317
-
Changed Status to Awaiting Feedback
-
Changed Priority to Normal Changed Category to Code Enhancement
-
No feedback, considering this fixed.
-
Changed Status to Awaiting Feedback Changed Priority to Normal
-
Changed Status to Confirmed Changed Version to 21.11 (Current Dev21) Changed Implemented Version to Unset Changed Milestone to 22 Changed Priority to Normal Changed Category to Minor
-
Changed Related to to Event System Overhaul
-
Changed Related to to Investigate and implement handling for NPCs on transports
- 2 comments
-
- bridge
- pathfinding
-
(and 3 more)
Tagged with:
-
diff --git a/dep/include/g3dlite/G3D/AtomicInt32.h b/dep/include/g3dlite/G3D/AtomicInt32.h index 2d63f99..9a5722d 100644 --- a/dep/include/g3dlite/G3D/AtomicInt32.h +++ b/dep/include/g3dlite/G3D/AtomicInt32.h @@ -76,13 +76,8 @@ public: # elif defined(G3D_LINUX) || defined(G3D_FREEBSD) - int32 old; - asm volatile ("lock; xaddl %0,%1" - : "=r"(old), "=m"(m_value) /* outputs */ - : "0"(x), "m"(m_value) /* inputs */ - : "memory", "cc"); - return old; - + return __sync_fetch_and_add(&m_value, 1); + # elif defined(G3D_OSX) int32 old = m_value; @@ -115,14 +110,7 @@ public: // Note: returns the newly decremented value return InterlockedDecrement(&m_value); # elif defined(G3D_LINUX) || defined(G3D_FREEBSD) - unsigned char nz; - - asm volatile ("lock; decl %1;\n\t" - "setnz %%al" - : "=a" (nz) - : "m" (m_value) - : "memory", "cc"); - return nz; + return __sync_sub_and_fetch(&m_value, 1); # elif defined(G3D_OSX) // Note: returns the newly decremented value return OSAtomicDecrement32(&m_value); @@ -142,7 +130,9 @@ public: int32 compareAndSet(const int32 comperand, const int32 exchange) { # if defined(G3D_WIN32) return InterlockedCompareExchange(&m_value, exchange, comperand); -# elif defined(G3D_LINUX) || defined(G3D_FREEBSD) || defined(G3D_OSX) +# elif defined(G3D_LINUX) || defined(G3D_FREEBSD) + return __sync_val_compare_and_swap(&m_value, comperand, exchange); +# elif defined(G3D_OSX) // Based on Apache Portable Runtime // http://koders.com/c/fid3B6631EE94542CDBAA03E822CA780CBA1B024822.aspx int32 ret; diff --git a/dep/include/g3dlite/G3D/platform.h b/dep/include/g3dlite/G3D/platform.h index c6018bb..985301a 100644 --- a/dep/include/g3dlite/G3D/platform.h +++ b/dep/include/g3dlite/G3D/platform.h @@ -270,8 +270,13 @@ int WINAPI WinMain(HINSTANCE hInst, HINSTANCE hPrev, LPSTR szCmdLine, int sw) {\ # ifndef __stdcall # define __stdcall # endif +# elif defined(__arm__) + + // CDECL does not apply to arm. +# define __cdecl # endif // calling conventions + /** @def G3D_CHECK_PRINTF_METHOD_ARGS() Enables printf parameter validation on gcc. */ # define G3D_CHECK_PRINTF_METHOD_ARGS __attribute__((__format__(__printf__, 2, 3))) diff --git a/dep/src/g3dlite/System.cpp b/dep/src/g3dlite/System.cpp index ce190d0..a4cfab2 100644 --- a/dep/src/g3dlite/System.cpp +++ b/dep/src/g3dlite/System.cpp @@ -524,8 +524,11 @@ static bool checkForCPUID() { // all known supported architectures have cpuid // add cases for incompatible architectures if they are added // e.g., if we ever support __powerpc__ being defined again - +#if defined(__arm__) + return false; +#else return true; +#endif } @@ -1730,6 +1733,14 @@ void System::cpuid(CPUIDFunction func, uint32& eax, uint32& ebx, uint32& ecx, ui edx = 0; } +#elif defined(G3D_LINUX) && defined(__arm__) +// non-x86 CPU; no CPUID, at least in userspace +void System::cpuid(CPUIDFunction func, uint32& eax, uint32& ebx, uint32& ecx, uint32& edx) { + eax = 0; + ebx = 0; + ecx = 0; + edx = 0; +} #else // See http://sam.zoy.org/blog/2007-04-13-shlib-with-non-pic-code-have-inline-assembly-and-pic-mix-well diff --git a/src/shared/ByteBuffer.h b/src/shared/ByteBuffer.h index fdb423f..4561bca 100644 --- a/src/shared/ByteBuffer.h +++ b/src/shared/ByteBuffer.h @@ -545,7 +545,13 @@ class ByteBuffer { if(pos + sizeof(T) > size()) throw ByteBufferException(false, pos, sizeof(T), size()); +#if defined(__arm__) || defined(_M_ARM) + //memcpy to avoid alignment issues + T val; + memcpy((void*)&val,(void*)&_storage[pos],sizeof(T)); +#else T val = *((T const*)&_storage[pos]); +#endif EndianConvert(val); return val; } diff --git a/src/shared/Database/SQLStorageImpl.h b/src/shared/Database/SQLStorageImpl.h index 8e3768a..c9e434b 100644 --- a/src/shared/Database/SQLStorageImpl.h +++ b/src/shared/Database/SQLStorageImpl.h @@ -27,6 +27,13 @@ template<class DerivedLoader, class StorageClass> template<class S, class D> // S source-type, D destination-type void SQLStorageLoaderBase<DerivedLoader, StorageClass>::convert(uint32 /*field_pos*/, S src, D& dst) { +#if defined(__arm__) || defined(_M_ARM) + if(((unsigned)&dst)%sizeof(D)){ + //address not aligned. Use memcpy to avoid unaligned trap + D converted(src); + memcpy((void*) &dst,(void*) &converted,sizeof(D)); + }else +#endif dst = D(src); } @@ -58,6 +65,13 @@ template<class DerivedLoader, class StorageClass> template<class D> // D destination-type void SQLStorageLoaderBase<DerivedLoader, StorageClass>::convert_from_str(uint32 /*field_pos*/, char const* /*src*/, D& dst) { +#if defined(__arm__) || defined(_M_ARM) + if(((unsigned)&dst)%sizeof(D)){ + //address not aligned. Use memcpy to avoid unaligned trap + D converted(0); + memcpy((void*) &dst,(void*) &converted,sizeof(D)); + }else +#endif dst = 0; } @@ -65,6 +79,13 @@ template<class DerivedLoader, class StorageClass> template<class S, class D> // S source-type, D destination-type void SQLStorageLoaderBase<DerivedLoader, StorageClass>::default_fill(uint32 /*field_pos*/, S src, D& dst) { +#if defined(__arm__) || defined(_M_ARM) + if(((unsigned)&dst)%sizeof(D)){ + //address not aligned. Use memcpy to avoid unaligned trap + D converted(src); + memcpy((void*) &dst,(void*) &converted,sizeof(D)); + }else +#endif dst = D(src); }
-
Changed Implemented Version to Unset Changed Milestone to 21 Changed Type to Game Event
-
Quest was added in patch 3.3 according to wowhead, so it might need removing from TBC realm, investigation into this is needed.
-
Issue originally reported in this thread: Cause: Speaking with @Rochet2 about the issue I have confirmed the user was using an LUA script to list all players then running GetZoneId on them. The server would crash anytime a player was in transition between maps and the script was not returned a map / zone ID. Outcome: After discussing with Rochet2 we will exclude any players from being listed in such a manner that are in transition and prevent GetZoneId or GetMap being ran on them. Rochet2 will write a fix for this which will be committed and linked in this report. This bug report will serve to track the crash and no further action is needed.
-
World of Warcraft Torrents - Getting All Clients
madmax replied to madmax's topic in Frequently Asked Questions
Original topic links have been updated. All torrents from what I can tell are active at this time March 2017. -
Investigate and Implement Full Handling of Transports & NPCs on them
madmax commented on madmax's bug in Enhancement Requests
Changed Status to In Progress Changed Assigned to H0zen Changed Version to 22.1 Changed Implemented Version to Unset Changed Milestone to 21
Contact Us
To contact us
click here
You can also email us at [email protected]
Privacy Policy | Terms & Conditions
You can also email us at [email protected]
Privacy Policy | Terms & Conditions
Copyright © getMaNGOS. All rights Reserved.
This website is in no way associated with or endorsed by Blizzard Entertainment®
This website is in no way associated with or endorsed by Blizzard Entertainment®