Jump to content

.NyanCat

Member
  • Posts

    33
  • Joined

  • Last visited

  • Feedback

    0%

About .NyanCat

Informations

  • Gender
    Male

Recent Profile Visitors

2895 profile views

.NyanCat's Achievements

Enthusiast

Enthusiast (6/16)

  • Dedicated
  • Reacting Well
  • First Post
  • Collaborator
  • Conversation Starter

Recent Badges

22

Reputation

  1. No currently there are no fixes inclued.
  2. I just learned that on most modern ARM cpus char is unsigned. X86 cpus handle the char as signed in most cases. I guess thats the problem with those strange behaviors on my M1-Mac. I will test the -fsigned-char compiler flag and let you know if that helps.
  3. The strange problems are different from arm to x86. On arm the items disappear and some other things are broken. Running the deployment on windows, those bugs are not available but you are not able to connect after several minutes and the same happens on arm as well.(Wrong password message) Starting the auth over helps but the problem continues.
  4. What a wonderful project! Thanks for the effort! The source compiles and runs natively on my m1 mac as well! (Without any vm) Next is tryin to connect with the client. Gonna keep you updated...
  5. How do you build the shared lib (.so)? If i run "gmake static dynamic" i get the error "ld: error: relocation R_386_32 cannot be used against local symbol; recompile with -fPIC"
  6. I experienced that exact samr peoblem as well yesterday On login. Auth crashes.
  7. Hello, i do have the same problem as well. Anyone here that can help?
  8. Okay. No one can help me so far... Still having this bug. I started to compare with other db sources (popular ones) and compared makefiles etc. There is no difference in these parts! It needs to be something regarding compiler or i dont know... I also switched root server. Same problem. Here is my latest error: [Hidden Content] cache.h: #ifndef __INC_COMMON_CACHE_H__ #define __INC_COMMON_CACHE_H__ template <typename T> class cache { public: cache() : m_bNeedQuery(false), m_expireTime(600), m_lastUpdateTime(0) { m_lastFlushTime = time(0); memset( &m_data, 0, sizeof(m_data) ); } T * Get(bool bUpdateTime = true) { if (bUpdateTime) m_lastUpdateTime = time(0); return &m_data; } void Put(T * pNew, bool bSkipQuery = false) { thecore_memcpy(&m_data, pNew, sizeof(T)); m_lastUpdateTime = time(0); if (!bSkipQuery) m_bNeedQuery = true; } bool CheckFlushTimeout() { if (m_bNeedQuery && time(0) - m_lastFlushTime > m_expireTime) return true; return false; } bool CheckTimeout() { if (time(0) - m_lastUpdateTime > m_expireTime) return true; return false; } void Flush() { if (!m_bNeedQuery) return; OnFlush(); m_bNeedQuery = false; m_lastFlushTime = time(0); } virtual void OnFlush() = 0; protected: T m_data; bool m_bNeedQuery; time_t m_expireTime; time_t m_lastUpdateTime; time_t m_lastFlushTime; }; #endif Compiled with -std=c++2a As i said befor. I cant trigger that crash. It just randomly appears. I realy need help with that one. Please help me.
  9. @Vanilla void CClientManager::FlushItemCacheSet(DWORD pid) { TItemCacheSetPtrMap::iterator it = m_map_pkItemCacheSetPtr.find(pid); if (it == m_map_pkItemCacheSetPtr.end()) { sys_log(0, "FLUSH_ITEMCACHESET : No ItemCacheSet pid(%d)", pid); return; } TItemCacheSet * pSet = it->second; TItemCacheSet::iterator it_set = pSet->begin(); while (it_set != pSet->end()) { CItemCache * c = *it_set++; c->Flush(); m_map_itemCache.erase(c->Get()->id); delete c; // This is line 1408 } pSet->clear(); delete pSet; m_map_pkItemCacheSetPtr.erase(it); if (g_log) sys_log(0, "FLUSH_ITEMCACHESET : Deleted pid(%d)", pid); } void CClientManager::UpdateLogoutPlayer() { time_t now = time(0); TLogoutPlayerMap::iterator it = m_map_logout.begin(); while (it != m_map_logout.end()) { TLogoutPlayer* pLogout = it->second; if (now - g_iLogoutSeconds > pLogout->time) { FlushItemCacheSet(pLogout->pid); // This is line 1335 FlushPlayerCacheSet(pLogout->pid); delete pLogout; m_map_logout.erase(it++); } else ++it; } } void emergency_sig(int sig) { if (sig == SIGSEGV) sys_log(0, "SIGNAL: SIGSEGV"); else if (sig == SIGUSR1) sys_log(0, "SIGNAL: SIGUSR1"); if (sig == SIGSEGV) abort(); // Main.cpp Line 58 }
  10. @Vanilla those files are still 90 % same as your last source release r71480. The lines might vary maybe between 1-3 lines according to includes and minor changes. I will provide the functions as fast as possible. Im not at home during the weekend so please stay tuned. Thanks for the suggestion with ports tree. I will change my compile environment. Do i need to change the root as well? And again. I always relied on your source. It worked best for me and you always did a great job with tutorials and help. You are indeed one of the reasons i learn with that mt2 scene for years now (10 years now).
  11. Im actually still using your source with some minor changes thank you for your great work btw! No i build it locally and run it on a root server. Both are latest FreeBSD 12.0 p11. All ports are up to date as well. Same. ldd db (on root): libc++.so.1 => /usr/lib/libc++.so.1 (0x204bd000) libcxxrt.so.1 => /lib/libcxxrt.so.1 (0x20581000) libm.so.5 => /lib/libm.so.5 (0x2059e000) libmd.so.6 => /lib/libmd.so.6 (0x205cd000) libmysqlclient.so.18 => /usr/local/lib/mysql/libmysqlclient.so.18 (0x205f1000) libz.so.6 => /lib/libz.so.6 (0x20911000) libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x20929000) libthr.so.3 => /lib/libthr.so.3 (0x20941000) libc.so.7 => /lib/libc.so.7 (0x20969000) libssl.so.111 => /usr/lib/libssl.so.111 (0x20b12000) libcrypto.so.111 => /lib/libcrypto.so.111 (0x20b90000) libexecinfo.so.1 => /usr/lib/libexecinfo.so.1 (0x20de0000) libelf.so.2 => /lib/libelf.so.2 (0x20de4000) I use clang. Thanks a lot for your help! # Edit: Ah i installed most ports over pkg and upgraded everything to the latest with pkg as well while tryin to get rid of those crashes. I also installed same mysql versions on both. The compilation works flawless #Edit 2: gdb offers a bit more information then lldb: #0 0x20ae1f73 in thr_kill () from /lib/libc.so.7 #1 0x20ae01b1 in raise () from /lib/libc.so.7 #2 0x20a53353 in abort () from /lib/libc.so.7 #3 0x004603f7 in emergency_sig (sig=11) at Main.cpp:58 #4 0x20953408 in ?? () from /lib/libthr.so.3 #5 0x2095283b in ?? () from /lib/libthr.so.3 #6 <signal handler called> #7 0x00446040 in CClientManager::FlushItemCacheSet (this=0xffbfe910, pid=792) at ClientManager.cpp:1408 #8 0x0043c308 in CClientManager::UpdateLogoutPlayer (this=0xffbfe910) at ClientManagerPlayer.cpp:1335 #9 0x00440a03 in CClientManager::Process (this=0xffbfe910) at ClientManager.cpp:3089 #10 0x00440040 in CClientManager::MainLoop (this=0xffbfe910) at ClientManager.cpp:191 #11 0x00460537 in main () at Main.cpp:93
  12. Yes thats what i actually did as well! I will try that. Thank you so much! Btw. do you have any idea why that happens? @Tunga
×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.