Commit Graph

36 Commits

Author SHA1 Message Date
Georg Baum
b596330093 Fix compilation with boost 1.58
Newer boost versions use complicated type traits for boost::next and
boost::prior, which do not work with the RandomAccessList iterators.
The long term solution is to use std::next and std::prev, for now supply
simple replacements for compilers that do not support C++11 yet.
2015-05-16 00:05:23 +02:00
Jean-Marc
a5a01b6af3 Fix uninitialized members in Compare::Impl
Fixes coverity issue 23418.
2015-03-04 22:35:40 +01:00
Jean-Marc
08c9f208fb Pass parameters by reference (performance)
Fixes coverity issues 23339 and 23347.

Some additional spacing changes sneaked in.
2015-03-04 22:26:28 +01:00
Richard Heck
065db68067 Fix a bunch of minor issues discovered by the cppcheck script. 2014-04-21 11:52:00 -04:00
Vincent van Ravesteijn
77d532bd51 Compare: Add the authors from the 'other' document
Otherwise the resulting document may contain references to authors that are not present in the author list, which results in a crash.

Fixes-bug: #8769
2014-02-07 23:14:36 +01:00
Richard Heck
1b1f8dd235 Audit all the LASSERT calls, and try to do something sensible at
each failure.

There are several places I was not sure what to do. These are marked
by comments beginning "LASSERT:" so they can be found easily. At the
moment, they are at:

Author.cpp:105: // LASSERT: What should we do here?
Author.cpp:121: // LASSERT: What should we do here?
Buffer.cpp:4525:        // LASSERT: Is it safe to continue here, or should we just return?
Cursor.cpp:345:         // LASSERT: Is it safe to continue here, or should we return?
Cursor.cpp:403:         // LASSERT: Is it safe to continue here, or should we return?
Cursor.cpp:1143:                // LASSERT: There have been several bugs around this code, that seem
CursorSlice.cpp:83:     // LASSERT: This should only ever be called from an InsetMath.
CursorSlice.cpp:92:     // LASSERT: This should only ever be called from an InsetMath.
LayoutFile.cpp:303:                     // LASSERT: Why would this fail?
Text.cpp:995:           // LASSERT: Is it safe to continue here?
2013-04-25 17:27:10 -04:00
Uwe Stöhr
d750b6610f fix some more typos spotted by Yuri 2013-04-19 23:26:58 +02:00
Lars Gullik Bjønnes
6b2232a29c src/*.cpp: reformatting to increase consistency 2012-10-28 17:42:07 +01:00
Jean-Marc Lasgouttes
992eae2524 Typos 2012-06-05 12:22:13 +02:00
Pavel Sanda
a5cb2afc1b Next headers
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33976 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-31 19:38:05 +00:00
Vincent van Ravesteijn
e3c9fa3d0d Compare:\n- Fix the doubly added first snake. \n- Fix the behaviour when comparing two the same files.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33184 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-24 00:55:08 +00:00
Vincent van Ravesteijn
562f1da9c9 Fix the Compare feature. The compl_vector class shouldn't be accessed twice in one statement as it might happen that the vectors are reallocated, such that the references are not correct anymore.
(P.S. Compare this to the fact that you're not supposed to refer to x and ++x in one statement.)

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33137 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-21 18:58:55 +00:00
Vincent van Ravesteijn
ec96bbe429 Try to fix an assert coming from "gcc vector-index checks".
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33052 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-16 00:22:15 +00:00
Jean-Marc Lasgouttes
acefad32e4 Kill warning and avoid double arithmetic. Vincent, I hope I did not break something...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33048 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-15 16:32:05 +00:00
Vincent van Ravesteijn
aa2fac50eb Compare: Actually abort the process when cancel is pressed.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33020 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-14 00:56:55 +00:00
Vincent van Ravesteijn
d378b5d8ee Compare: Add a statusbar to the dialog and show a message every second. The message now shows at which recursion level the algorithm is and which D-path it is currently processing.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33018 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-14 00:41:47 +00:00
Vincent van Ravesteijn
ce6aa0d8d3 CaMeLbUmP all function names, private or not.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32957 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-10 21:55:11 +00:00
Vincent van Ravesteijn
715b1303da Optimize DocRange::length(). Thanks Abdel.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32938 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-10 13:55:42 +00:00
Vincent van Ravesteijn
fd0dfe1b79 Readd comment and squeeze warning.
Is gcc quiet too now ?

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32937 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-10 13:54:06 +00:00
Vincent van Ravesteijn
93510f741c Use the operator[] to get and set the values of the compl_vector.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32935 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-10 13:17:10 +00:00
Vincent van Ravesteijn
43c8de8138 Cosmetics mainly: Rename math.h to cmath, reorder some includes, remove some includes and remove some superfluous "lyx::".
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32934 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-10 12:37:50 +00:00
Tommaso Cucinotta
50a69279ee Let trunk compile.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32932 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-10 10:27:00 +00:00
Vincent van Ravesteijn
c3d5ba4e91 Remove some debug info that renders trunk uncompilable.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32931 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-10 00:17:40 +00:00
Vincent van Ravesteijn
9cfebdb969 Compare feature part 3: Implement the find_middle_snake algorithm.
The feature should now be up and running, although it might have some performance issues. Please test with small changes :S as it scales quadratic with the size of a single change. 

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32930 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-10 00:09:48 +00:00
Vincent van Ravesteijn
1fe4ff8ef3 Add a vector class that can be referenced with both positive and negative indices. It is internally represented as two vectors, one for non-zero indices and one for negative indices. In this way, the vector can grow in both directions. If an index is not available in the vector, the default value is returned. If an object is put in the vector beyond its size, the empty spots in between are also filled with the default value.
I hope I'm not reinventing the wheel too much here. This might change anyway if this appears to be a performance bottleneck. 

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32929 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-10 00:06:02 +00:00
Vincent van Ravesteijn
6bb8b55156 Compare: cosmetics and comments.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32928 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-09 23:59:33 +00:00
Vincent van Ravesteijn
c49dea81a9 Compare: simplify the step functions.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32927 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-09 23:56:46 +00:00
Vincent van Ravesteijn
28b0075b11 No more magic booleans. The word of Andre is spreading.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32926 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-09 22:58:20 +00:00
Vincent van Ravesteijn
68edfdafc3 Unify traverse_snake_back and traverse_snake_forw and make it more general for future purposes.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32922 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-09 21:17:10 +00:00
Vincent van Ravesteijn
5477b5a570 Small optimization in Compare::Impl::equal().
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32916 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-09 16:58:55 +00:00
Vincent van Ravesteijn
f223e4ff63 Minor changes in Changes.cpp
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32914 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-09 16:51:51 +00:00
Richard Heck
fed94f72d5 Make gcc happy.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32681 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-30 22:17:39 +00:00
Vincent van Ravesteijn
28dab69a0e Compare feature take two.
With this patch, we can recursively walk through the document. The document is split around a middle snake and each part is processed further. The snakes are added to the output document as well as the added and deleted parts.

Now, the only thing left is to commit the implementation of the find_middle_snake function.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32591 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-19 18:15:20 +00:00
Abdelrazak Younes
1ff6b1122b Fix gcc warnings.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31830 a592a061-630c-0410-9148-cb99ea01b6c8
2009-11-02 15:20:36 +00:00
Vincent van Ravesteijn
7227566e86 Call the Compare thread from the GuiCompare dialog.
Furthermore:
- increase safety, 
- improve error handling,
- minor cleanups,
- set documents to read-only while running the thread.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31736 a592a061-630c-0410-9148-cb99ea01b6c8
2009-10-25 13:41:46 +00:00
Vincent van Ravesteijn
18483e6362 Adds the threaded Compare class, which will eventually do the comparison between two documents.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31734 a592a061-630c-0410-9148-cb99ea01b6c8
2009-10-25 10:43:16 +00:00