mirror of
https://github.com/RetroShare/RetroShare.git
synced 2025-02-03 11:00:14 -05:00
Fixed crash on shutdown of RetroShare, when the cache loading is running.
Now the p3distrib threads are stopped before the instance of AuthGPG is deleted. git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4119 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
parent
372d837af1
commit
f9c896c3ac
@ -180,5 +180,15 @@ void RsServer::rsGlobalShutDown()
|
|||||||
join();
|
join();
|
||||||
ftserver->StopThreads();
|
ftserver->StopThreads();
|
||||||
|
|
||||||
|
// stop the p3distrib threads
|
||||||
|
#ifndef MINIMAL_LIBRS
|
||||||
|
mForums->join();
|
||||||
|
mChannels->join();
|
||||||
|
|
||||||
|
#ifdef RS_USE_BLOGS
|
||||||
|
mBlogs->join();
|
||||||
|
#endif
|
||||||
|
#endif // MINIMAL_LIBRS
|
||||||
|
|
||||||
AuthGPGExit();
|
AuthGPGExit();
|
||||||
}
|
}
|
||||||
|
@ -53,6 +53,7 @@ RsServer::RsServer(RsIface &i, NotifyBase &callback)
|
|||||||
chatSrv = NULL;
|
chatSrv = NULL;
|
||||||
mStatusSrv = NULL;
|
mStatusSrv = NULL;
|
||||||
mChannels = NULL;
|
mChannels = NULL;
|
||||||
|
mForums = NULL;
|
||||||
/* caches (that need ticking) */
|
/* caches (that need ticking) */
|
||||||
mRanking = NULL;
|
mRanking = NULL;
|
||||||
|
|
||||||
|
@ -45,7 +45,7 @@
|
|||||||
#include "services/p3blogs.h"
|
#include "services/p3blogs.h"
|
||||||
#include "services/p3statusservice.h"
|
#include "services/p3statusservice.h"
|
||||||
#include "services/p3channels.h"
|
#include "services/p3channels.h"
|
||||||
|
#include "services/p3forums.h"
|
||||||
|
|
||||||
/* The Main Interface Class - for controlling the server */
|
/* The Main Interface Class - for controlling the server */
|
||||||
|
|
||||||
@ -163,6 +163,7 @@ class RsServer: public RsControl, public RsThread
|
|||||||
p3ChatService *chatSrv;
|
p3ChatService *chatSrv;
|
||||||
p3StatusService *mStatusSrv;
|
p3StatusService *mStatusSrv;
|
||||||
p3Channels *mChannels;
|
p3Channels *mChannels;
|
||||||
|
p3Forums *mForums;
|
||||||
/* caches (that need ticking) */
|
/* caches (that need ticking) */
|
||||||
p3Ranking *mRanking;
|
p3Ranking *mRanking;
|
||||||
|
|
||||||
|
@ -1957,7 +1957,7 @@ int RsServer::StartupRetroShare()
|
|||||||
CachePair cp(mRanking, mRanking, CacheId(RS_SERVICE_TYPE_RANK, 0));
|
CachePair cp(mRanking, mRanking, CacheId(RS_SERVICE_TYPE_RANK, 0));
|
||||||
mCacheStrapper -> addCachePair(cp); /* end of declaration */
|
mCacheStrapper -> addCachePair(cp); /* end of declaration */
|
||||||
|
|
||||||
p3Forums *mForums = new p3Forums(RS_SERVICE_TYPE_FORUM,
|
mForums = new p3Forums(RS_SERVICE_TYPE_FORUM,
|
||||||
mCacheStrapper, mCacheTransfer,
|
mCacheStrapper, mCacheTransfer,
|
||||||
localcachedir, remotecachedir, forumdir);
|
localcachedir, remotecachedir, forumdir);
|
||||||
|
|
||||||
|
@ -862,7 +862,7 @@ void p3GroupDistrib::run() /* called once the thread is started */
|
|||||||
int printed = 0;
|
int printed = 0;
|
||||||
#endif
|
#endif
|
||||||
CacheData cache;
|
CacheData cache;
|
||||||
while(1)
|
while(isRunning())
|
||||||
{
|
{
|
||||||
/* */
|
/* */
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user