Improved the notification model so that it uses Qt signals to avoid core dumps, and improved the gui to increase responsiveness (e.g. forum display, network discovery info, friends, msg deletion and selection)

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1050 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
csoler 2009-02-22 17:36:39 +00:00
parent 93fa052b58
commit 59cdaba9dc
25 changed files with 298 additions and 292 deletions

View file

@ -322,20 +322,32 @@ int FileIndexStore::RequestDirDetails(void *ref, DirDetails &details, uint32_t f
/* cannot be null -> no files at root level */
parent=file->parent;
}
// Well, yes, it can be null, beleive me. In such a case it may be that
// file is a person entry.
/* NEW add path (to dir - if dir, or parent dir - if file? */
details.path = parent->path;
while(parent->parent)
parent = parent->parent;
/* we should end up on the PersonEntry */
if (NULL == (person = dynamic_cast<PersonEntry *>(parent)))
if(parent==NULL)
{
std::cerr << "Major Error- Not PersonEntry!";
exit(1);
if(NULL == (person = dynamic_cast<PersonEntry *>(file)))
{
std::cerr << "Major Error- Not PersonEntry!";
exit(1);
}
}
else
{
/* NEW add path (to dir - if dir, or parent dir - if file? */
details.path = parent->path;
while(parent->parent)
parent = parent->parent;
/* we should end up on the PersonEntry */
if (NULL == (person = dynamic_cast<PersonEntry *>(parent)))
{
std::cerr << "Major Error- Not PersonEntry!";
exit(1);
}
}
details.id = person->id;
}