Commit Graph

12 Commits

Author SHA1 Message Date
Guillaume Munch
9a9288d67d Fix memory leak with WordLists
https://www.mail-archive.com/lyx-devel@lists.lyx.org/msg198230.html
2016-12-31 15:29:43 +01:00
Guillaume Munch
0eb0b8531a Convert a pointer to a reference
The validity of the reference is guaranteed by QThreadLocalStorage
2016-12-31 15:28:43 +01:00
Guillaume Munch
8d640dc776 Remove non-copyable idioms
Two better ways of making a class non-copyable in C++11:

* Store the p. impl. in a unique_ptr (for the cases of classes with p. impl.),
  or:

* Define publicly the copy constructor and assignment as deleted

Lots of other classes could be cleaned up in this way.
2016-06-09 19:16:44 +01:00
Georg Baum
7baaeb3fd2 Make WordList noncopyable
To avoid unwanted double deletion of d.
2014-07-04 21:15:21 +02:00
Jean-Marc Lasgouttes
f8da042312 Do not store Languages objects in completion words lists
In the current code each paragraph contains a map<Language,
WordList*>, which means that it contains a full copy of the language
object. Since these objects contain translation tables nowadays, this
is a very bad idea.

This patch simply replaces the Language key by a string.

When loading the Userguide on linux/x86_64, the total memory
consumption decreases from 36.27MB to 31.50MB.
2014-04-21 11:51:59 -04:00
Tommaso Cucinotta
79716cbcd0 Clean up word lists on exit. Not really a concrete issue, but just
get less "noise" when debugging for memory leaks.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39865 a592a061-630c-0410-9148-cb99ea01b6c8
2011-10-15 13:38:52 +00:00
Vincent van Ravesteijn
3efb1572a2 Fix bug #6378: Word completion (in texted) should be language-sensitive.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32581 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-18 14:48:56 +00:00
Stefan Schimanski
cd5bad62e0 * paragraph support for the global word list. To make it buffer
dependent, we need the buffer pointer. In fact we already have a
  pointer to the text inset. So as soon as inset know their buffer we
  can easily switch to a buffer local word list.
* there might be missing some more places to update the words from a
  buffer, like for example after backspace or more important when the
  cursor leaves a paragraph.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23244 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-26 13:07:59 +00:00
Stefan Schimanski
f8d516c7af Revert "* compile fix"
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23234 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-25 22:02:48 +00:00
Stefan Schimanski
1669c17c0f * compile fix
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23233 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-25 21:53:16 +00:00
Abdelrazak Younes
f658224e5c Fix warnings and svn eol properties.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23220 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-25 08:54:51 +00:00
Stefan Schimanski
9f21b7f9ad * high performance text completion with weighted btrees to get pseudo
random-access (i.e. O(log n)) to the n-th element in a list/set. Try
  it with 1000000 keys ... no problem.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23213 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-25 01:56:53 +00:00