# # # patch "src/model/Workspace.cpp" # from [9993d148a8cd9e2011d817a0fa2fbb2eeb98e184] # to [5f18048e6aa58cd66a1e4d1328aa70223c89d706] # ============================================================ --- src/model/Workspace.cpp 9993d148a8cd9e2011d817a0fa2fbb2eeb98e184 +++ src/model/Workspace.cpp 5f18048e6aa58cd66a1e4d1328aa70223c89d706 @@ -75,18 +75,28 @@ { QStringList *output = monotone->getOutput(); - if (returnCode > 0) - { + // TODO: Better error reporting! + if ((returnCode > 0) && (!output->isEmpty())) + { QString error = output->front(); qWarning("A error occured: %s", error.latin1()); + // restore the normal cursor + qApp->restoreOverrideCursor(); return; } + else if (returnCode > 0) + { + qWarning("Workspace::parseInventory: A error occured with empty output list"); + // restore the normal cursor + qApp->restoreOverrideCursor(); + return; + } QRegExp regex("^(R|D|[ ])(R|A|[ ])(M|P|U|I|[ ])\\s(\\d+)\\s(\\d+)\\s(.+)$"); - regex.setMinimal(TRUE); + regex.setMinimal(true); - std::map renameMap; - std::map::iterator renameIter; + QMap renameMap; + QMap::iterator renameIter; WorkspaceItem *item; QList* tempItems = new QList(); @@ -163,8 +173,9 @@ // remove trailing slash QString path = list[6]; + path = path.trimmed(); bool isDirectory = false; - if (path.endsWith("/")) + if (path.endsWith('/')) { isDirectory = true; path = path.left(path.length() - 1); @@ -172,14 +183,23 @@ // this item is given a parent explicitely later on item = new WorkspaceItem(NULL, path, status, isDirectory); - if (from_id > 0) - { - renameMap[-from_id] = item; - } - if (to_id > 0) - { - renameMap[to_id] = item; - } + //if (from_id > 0) + //{ + // renameMap[-from_id] = item; + //} + //if (to_id > 0) + //{ + // renameMap[to_id] = item; + //} + + // Display the item properties + qDebug("Item: Name %s, PATH %s, Status %s, IsDir %d", + item->getFilename().trimmed().latin1(), + item->getPath().trimmed().latin1(), + item->statusString().trimmed().latin1(), + item->isDirectory() + ); + tempItems->push_back(item); } @@ -204,6 +224,8 @@ // restore the normal cursor qApp->restoreOverrideCursor(); + + return; } QList* Workspace::buildTreeRecursive(QList* items, WorkspaceItem* parentItem)