commit a48adfa6d6b349f15c27e852e1c72a4f4c00880c
Author: Richard Heck <[email protected]>
Date: Sun Jun 12 00:26:38 2016 -0400
Fix coverity issue #127197.
We may fail to get a buffer when we request one.
diff --git a/src/LyX.cpp b/src/LyX.cpp
index b7b1edf..66ff6f3 100644
--- a/src/LyX.cpp
+++ b/src/LyX.cpp
@@ -490,14 +490,15 @@ int LyX::execWithoutGui(int & argc, char * argv[])
Buffer * buf =
pimpl_->buffer_list_.newBuffer(fname.absFileName());
LYXERR(Debug::FILES, "Loading " << fname);
- if (buf->loadLyXFile() == Buffer::ReadSuccess) {
+ if (buf && buf->loadLyXFile() == Buffer::ReadSuccess) {
ErrorList const & el = buf->errorList("Parse");
if (!el.empty())
for_each(el.begin(), el.end(),
bind(&LyX::printError, this, _1));
command_line_buffers.push_back(buf);
} else {
- pimpl_->buffer_list_.release(buf);
+ if (buf)
+ pimpl_->buffer_list_.release(buf);
docstring const error_message =
bformat(_("LyX failed to load the
following file: %1$s"),
from_utf8(fname.absFileName()));