diff --git a/libretroshare/src/services/p3statusservice.cc b/libretroshare/src/services/p3statusservice.cc index 72c2cef5b..ae3419f46 100644 --- a/libretroshare/src/services/p3statusservice.cc +++ b/libretroshare/src/services/p3statusservice.cc @@ -70,7 +70,16 @@ bool p3StatusService::getOwnStatus(StatusInfo& statusInfo) if (it == mStatusInfoMap.end()){ std::cerr << "p3StatusService::saveList() :" << "Did not find your status" << ownId << std::endl; - return false; + + // own status not set, set it to online + statusInfo.id = ownId; + statusInfo.status = RS_STATUS_ONLINE; + + std::pair pr(ownId, statusInfo); + mStatusInfoMap.insert(pr); + IndicateConfigChanged(); + + return true; } statusInfo = it->second; diff --git a/retroshare-gui/src/gui/common/AvatarWidget.cpp b/retroshare-gui/src/gui/common/AvatarWidget.cpp index 24d6dd1a9..32418ce40 100644 --- a/retroshare-gui/src/gui/common/AvatarWidget.cpp +++ b/retroshare-gui/src/gui/common/AvatarWidget.cpp @@ -150,10 +150,10 @@ void AvatarWidget::refreshStatus() { StatusInfo statusInfo; - // No check of return value. Non existing status info is handled as offline. if (mFlag.isOwnId) { rsStatus->getOwnStatus(statusInfo); } else { + // No check of return value. Non existing status info is handled as offline. rsStatus->getStatus(mId, statusInfo); } updateStatus(QString::fromStdString(statusInfo.id), statusInfo.status);