X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FBufferList.cpp;h=c253282b795c029ea244769362d4fee5d9e6ca5c;hb=9c375cb606d7950f8f6bd31e7a841399dc7bbfb2;hp=2348ac610348b28d96634f877a79a87bfefa7962;hpb=aafd52f44167d5510be1ddcb974daa9dae486933;p=lyx.git diff --git a/src/BufferList.cpp b/src/BufferList.cpp index 2348ac6103..c253282b79 100644 --- a/src/BufferList.cpp +++ b/src/BufferList.cpp @@ -92,13 +92,15 @@ BufferList::const_iterator BufferList::end() const void BufferList::release(Buffer * buf) { - LASSERT(buf, /**/); + // We may leak here, but we probably do not need to + // shut down. + LASSERT(buf, return); BufferStorage::iterator const it = find(bstore.begin(), bstore.end(), buf); if (it != bstore.end()) { Buffer * tmp = (*it); - LASSERT(tmp, /**/); bstore.erase(it); + LASSERT(tmp, return); delete tmp; } } @@ -152,10 +154,9 @@ void BufferList::closeAll() } -FileNameList const & BufferList::fileNames() const +FileNameList BufferList::fileNames() const { - static FileNameList nvec; - nvec.clear(); + FileNameList nvec; BufferStorage::const_iterator it = bstore.begin(); BufferStorage::const_iterator end = bstore.end(); for (; it != end; ++it) { @@ -192,13 +193,14 @@ Buffer * BufferList::getBuffer(unsigned int choice) Buffer * BufferList::next(Buffer const * buf) const { - LASSERT(buf, /**/); + // Something is wrong, but we can probably survive it. + LASSERT(buf, return 0); if (bstore.empty()) return 0; BufferStorage::const_iterator it = find(bstore.begin(), bstore.end(), buf); - LASSERT(it != bstore.end(), /**/); + LASSERT(it != bstore.end(), return 0); ++it; Buffer * nextbuf = (it == bstore.end()) ? bstore.front() : *it; return nextbuf; @@ -207,13 +209,14 @@ Buffer * BufferList::next(Buffer const * buf) const Buffer * BufferList::previous(Buffer const * buf) const { - LASSERT(buf, /**/); + // Something is wrong, but we can probably survive it. + LASSERT(buf, return 0); if (bstore.empty()) return 0; BufferStorage::const_iterator it = find(bstore.begin(), bstore.end(), buf); - LASSERT(it != bstore.end(), /**/); + LASSERT(it != bstore.end(), return 0); Buffer * previousbuf = (it == bstore.begin()) ? bstore.back() : *(it - 1); return previousbuf; @@ -343,7 +346,7 @@ void BufferList::recordCurrentAuthor(Author const & author) int BufferList::bufferNum(FileName const & fname) const { - FileNameList const & buffers = fileNames(); + FileNameList const buffers(fileNames()); FileNameList::const_iterator cit = find(buffers.begin(), buffers.end(), fname); if (cit == buffers.end())