X-Git-Url: https://code.citadel.org/?a=blobdiff_plain;f=citadel%2Fmodules%2Frssclient%2Fserv_rssclient.c;h=648d02d0b4c40353e879fd1dc7a85343764eb829;hb=a66c3c97a6aeef2a4567f39fe08115782f641a58;hp=b2a069fd6a2ecabe0ccc172e84a9dcc86d0145f8;hpb=d262741cce924786b2de5f3f10f5470e5d45743e;p=citadel.git diff --git a/citadel/modules/rssclient/serv_rssclient.c b/citadel/modules/rssclient/serv_rssclient.c index b2a069fd6..648d02d0b 100644 --- a/citadel/modules/rssclient/serv_rssclient.c +++ b/citadel/modules/rssclient/serv_rssclient.c @@ -418,7 +418,7 @@ eNextState RSS_FetchNetworkUsetableEntry(AsyncIO *IO) if (CheckIfAlreadySeen("RSS Item Seen", Ctx->ThisMsg->MsgGUID, IO->Now, - IO->Now - USETABLE_ANTIEXPIRE, + IO->Now - USETABLE_ANTIEXPIRE_HIRES, eCheckUpdate, IO->ID, CCID) != 0) @@ -464,7 +464,7 @@ void UpdateLastKnownGood(pRSSConfig *pCfg, time_t now) if (RSSCfg == pCfg->pCfg) break; - RSSCfg = RSSCfg->Next; + RSSCfg = RSSCfg->next; } if (RSSCfg != NULL) { @@ -539,8 +539,10 @@ eNextState RSSAggregator_AnalyseReply(AsyncIO *IO) if (it != NULL) { void *vptr; - GetNextHashPos(Ctx->OtherQRnumbers, it, &len, &Key, &vptr); - pCfg = vptr; + if (GetNextHashPos(Ctx->OtherQRnumbers, it, &len, &Key, &vptr)) + pCfg = vptr; + else + pCfg = NULL; } else pCfg = NULL; @@ -589,7 +591,8 @@ eNextState RSSAggregator_AnalyseReply(AsyncIO *IO) eNextState RSSAggregator_FinishHttp(AsyncIO *IO) { - return QueueDBOperation(IO, RSSAggregator_AnalyseReply); + StopCurlWatchers(IO); + return CurlQueueDBOperation(IO, RSSAggregator_AnalyseReply); } /* @@ -695,7 +698,7 @@ void rssclient_scan_room(struct ctdlroom *qrbuf, void *data, OneRoomNetCfg *OneR pthread_mutex_unlock(&RSSQueueMutex); - RSSCfg = RSSCfg->Next; + RSSCfg = RSSCfg->next; continue; } pthread_mutex_unlock(&RSSQueueMutex); @@ -722,7 +725,7 @@ void rssclient_scan_room(struct ctdlroom *qrbuf, void *data, OneRoomNetCfg *OneR DeleteRssCfg); pthread_mutex_unlock(&RSSQueueMutex); - RSSCfg = RSSCfg->Next; + RSSCfg = RSSCfg->next; } } @@ -830,7 +833,7 @@ void rssclient_veto_scan_room(struct ctdlroom *qrbuf, void *data, OneRoomNetCfg StrBufAppendBuf(Info->ErrMsg, RSSCfg->Url, 0); StrBufAppendBufPlain(Info->ErrMsg, HKEY(">\n"), 0); } - RSSCfg = RSSCfg->Next; + RSSCfg = RSSCfg->next; } } @@ -862,7 +865,7 @@ void ParseRSSClientCfgLine(const CfgLineType *ThisOne, StrBuf *Line, const char RSSCfg->last_known_good = StrBufExtractNext_long(Line, &LinePos, '|'); - RSSCfg->Next = (RSSCfgLine *)OneRNCFG->NetConfigs[ThisOne->C]; + RSSCfg->next = (RSSCfgLine *)OneRNCFG->NetConfigs[ThisOne->C]; OneRNCFG->NetConfigs[ThisOne->C] = (RoomNetCfgLine*) RSSCfg; } @@ -878,7 +881,7 @@ void SerializeRSSClientCfgLine(const CfgLineType *ThisOne, StrBuf *OutputBuffer, void DeleteRSSClientCfgLine(const CfgLineType *ThisOne, RoomNetCfgLine **data) { - RSSCfgLine *RSSCfg = (RSSCfgLine*) data; + RSSCfgLine *RSSCfg = (RSSCfgLine*) *data; FreeStrBuf(&RSSCfg->Url); free(*data);