X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=gui%2Fapitrace.cpp;h=084a4bf78633b9ec56c98b4f3d2ec4c30a49cdcd;hb=0b08bc64f619c32b3906ca8c040ba4695a5524af;hp=5758b0750a3acb0ca743af3908bafe6a21d59796;hpb=d31700077ae75f450b12ad7d9276c08cbad57d1b;p=apitrace diff --git a/gui/apitrace.cpp b/gui/apitrace.cpp index 5758b07..084a4bf 100644 --- a/gui/apitrace.cpp +++ b/gui/apitrace.cpp @@ -271,9 +271,11 @@ void ApiTrace::loadFrame(ApiTraceFrame *frame) void ApiTrace::finishedParsing() { - ApiTraceFrame *firstFrame = m_frames[0]; - if (firstFrame && !firstFrame->isLoaded()) { - loadFrame(firstFrame); + if (!m_frames.isEmpty()) { + ApiTraceFrame *firstFrame = m_frames[0]; + if (firstFrame && !firstFrame->isLoaded()) { + loadFrame(firstFrame); + } } } @@ -450,7 +452,7 @@ int ApiTrace::callInFrame(int callIdx) const { unsigned numCalls = 0; - for (int frameIdx = 0; frameIdx <= m_frames.size(); ++frameIdx) { + for (int frameIdx = 0; frameIdx < m_frames.size(); ++frameIdx) { const ApiTraceFrame *frame = m_frames[frameIdx]; unsigned numCallsInFrame = frame->isLoaded() ? frame->numChildren() @@ -496,4 +498,21 @@ bool ApiTrace::isFrameLoading(ApiTraceFrame *frame) const return m_loadingFrames.contains(frame); } +void ApiTrace::bindThumbnailsToFrames(const QList &thumbnails) +{ + QList frames = m_frames; + + QList::const_iterator thumbnail = thumbnails.begin(); + + foreach (ApiTraceFrame *frame, frames) { + if (thumbnail != thumbnails.end()) { + frame->setThumbnail(*thumbnail); + + ++thumbnail; + + emit changed(frame); + } + } +} + #include "apitrace.moc"