mirror of
https://github.com/RetroShare/RetroShare.git
synced 2025-07-31 18:29:02 -04:00
attempt to fix thread race between rsEvents and TokenQueue
This commit is contained in:
parent
b6ca07aaa3
commit
e402630095
4 changed files with 9 additions and 5 deletions
|
@ -1103,6 +1103,7 @@ void NewsFeed::addFeedItem(FeedItem *item)
|
|||
{
|
||||
static const int MAX_FEEDITEM_COUNT = 500 ;
|
||||
|
||||
std::cerr << "Adding feed item thread " << pthread_self() << std::endl;
|
||||
item->setAttribute(Qt::WA_DeleteOnClose, true);
|
||||
|
||||
// costly, but not really a problem here
|
||||
|
@ -1125,6 +1126,7 @@ void NewsFeed::addFeedItemIfUnique(FeedItem *item, bool replace)
|
|||
{
|
||||
FeedItem *feedItem = ui->feedWidget->findFeedItem(item->uniqueIdentifier());
|
||||
|
||||
std::cerr << "Adding feed item thread " << pthread_self() << std::endl;
|
||||
if (feedItem)
|
||||
{
|
||||
if (!replace)
|
||||
|
@ -1143,6 +1145,7 @@ void NewsFeed::remUniqueFeedItem(FeedItem *item)
|
|||
{
|
||||
FeedItem *feedItem = ui->feedWidget->findFeedItem(item->uniqueIdentifier());
|
||||
|
||||
std::cerr << "Adding feed item thread " << pthread_self() << std::endl;
|
||||
if (feedItem)
|
||||
{
|
||||
delete item;
|
||||
|
|
|
@ -34,7 +34,7 @@ TokenQueue::TokenQueue(RsTokenService *service, TokenResponse *resp)
|
|||
{
|
||||
mTrigger = new RsProtectedTimer(this);
|
||||
mTrigger->setSingleShot(true);
|
||||
connect(mTrigger, SIGNAL(timeout()), this, SLOT(pollRequests()));
|
||||
connect(mTrigger, SIGNAL(timeout()), this, SLOT(pollRequests()),Qt::QueuedConnection);
|
||||
}
|
||||
|
||||
bool TokenQueue::requestGroupInfo(uint32_t &token, uint32_t anstype, const RsTokReqOptions &opts, std::list<RsGxsGroupId>& ids, uint32_t usertype)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue