diff options
Diffstat (limited to 'desktop')
-rw-r--r-- | desktop/source/lib/init.cxx | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/desktop/source/lib/init.cxx b/desktop/source/lib/init.cxx index a5c2b7c4ea8b..ecef209842a8 100644 --- a/desktop/source/lib/init.cxx +++ b/desktop/source/lib/init.cxx @@ -1571,11 +1571,16 @@ void CallbackFlushHandler::queue(const int type, const char* data) if (pos != std::string::npos) { const std::string name = payload.substr(0, pos + 1); - removeAll( - [type, &name] (const queue_type::value_type& elem) { - return (elem.Type == type) && (elem.PayloadString.compare(0, name.size(), name) == 0); - } - ); + // This is needed because otherwise it creates some problems when + // a save occurs while a cell is still edited in Calc. + if (name != ".uno:ModifiedStatus=") + { + removeAll( + [type, &name] (const queue_type::value_type& elem) { + return (elem.Type == type) && (elem.PayloadString.compare(0, name.size(), name) == 0); + } + ); + } } } break; |